国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

深入解析C++編程中范圍解析運算符的作用及使用

2020-05-23 14:10:41
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了C++編程中范圍解析運算符的使用方法,是C++入門學習中的基礎知識,需要的朋友可以參考下
 

范圍解析運算符 :: 用于標識和消除在不同范圍內使用的標識符。 
語法

 

復制代碼代碼如下:

:: identifier class-name :: identifier namespace :: identifier enum class :: identifier enum struct :: identifier

 

 


備注
identifier 可以是變量、函數或枚舉值。
具有命名空間和類
以下示例顯示范圍解析運算符如何與命名空間和類一起使用:

 

namespace NamespaceA{  int x;  class ClassA {  public:    int x;  };}int main() {  // A namespace name used to disambiguate  NamespaceA::x = 1;  // A class name used to disambiguate  NamespaceA::ClassA a1;  a1.x = 2;}

沒有范圍限定符的范圍解析運算符表示全局命名空間。

namespace NamespaceA{  int x;}int x; int main() {  int x;  // the x in main()  x = 0;   // The x in the global namespace  ::x = 1;   // The x in the A namespace  NamespaceA::x = 2; }

你可以使用范圍解析運算符來標識命名空間的成員,還可標識通過 using 指定成員的命名空間的命名空間。在下面的示例中,你可以使用 NamespaceC 限定 ClassB(盡管 ClassB 已在 NamespaceB 中聲明),因為已通過 using 指令在 NamespaceC 中指定 NamespaceB。

namespace NamespaceB {  class ClassB {  public:    int x;  };}namespace NamespaceC{  using namespace B;}int main() {  NamespaceB::ClassB c_b;  NamespaceC::ClassB c_c;  c_b.x = 3;  c_c.x = 4;}

可使用范圍解析運算符鏈。在以下示例中,NamespaceD::NamespaceD1 將標識嵌套的命名空間 NamespaceD1,并且 NamespaceE::ClassE::ClassE1 將標識嵌套的類 ClassE1。

namespace NamespaceD{  namespace NamespaceD1{    int x;  }}namespace NamespaceE{  class ClassE{  public:    class ClassE1{    public:      int x;    };  };}int main() {  NamespaceD:: NamespaceD1::x = 6;  NamespaceE::ClassE::ClassE1 e1;  e1.x = 7 ;}

具有靜態成員
必須使用范圍解析運算符來調用類的靜態成員。

class ClassG {public:  static int get_x() { return x;}  static int x;};int ClassG::x = 6;int main() {  int gx1 = ClassG::x;  int gx2 = ClassG::get_x(); }

具有區分范圍的枚舉
區分范圍的解析運算符還可以與區分范圍的枚舉枚舉聲明的值一起使用,如下例所示:

enum class EnumA{  First,  Second,  Third};int main() {  EnumA enum_value = EnumA::First;}
 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 屏东市| 科技| 庆安县| 凤阳县| 贺州市| 象州县| 翼城县| 兰溪市| 扎囊县| 张北县| 河东区| 四会市| 辽阳县| 宁明县| 南涧| 英山县| 大荔县| 榆社县| 织金县| 阿瓦提县| 河曲县| 阜新| 上饶县| 搜索| 镶黄旗| 宁都县| 辽源市| 闽侯县| 汾阳市| 翁源县| 响水县| 新源县| 潢川县| 浮山县| 松阳县| 长白| 扶风县| 天峻县| 东阳市| 南京市| 张家港市|