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

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

深入解析C++編程中范圍解析運(yùn)算符的作用及使用

2020-01-26 14:46:35
字體:
供稿:網(wǎng)友

范圍解析運(yùn)算符 :: 用于標(biāo)識和消除在不同范圍內(nèi)使用的標(biāo)識符。
語法

復(fù)制代碼 代碼如下:

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


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

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;}

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

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; }

你可以使用范圍解析運(yùn)算符來標(biāo)識命名空間的成員,還可標(biāo)識通過 using 指定成員的命名空間的命名空間。在下面的示例中,你可以使用 NamespaceC 限定 ClassB(盡管 ClassB 已在 NamespaceB 中聲明),因?yàn)橐淹ㄟ^ 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;}

可使用范圍解析運(yùn)算符鏈。在以下示例中,NamespaceD::NamespaceD1 將標(biāo)識嵌套的命名空間 NamespaceD1,并且 NamespaceE::ClassE::ClassE1 將標(biāo)識嵌套的類 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 ;}

具有靜態(tài)成員
必須使用范圍解析運(yùn)算符來調(diào)用類的靜態(tài)成員。

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(); }

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

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 凭祥市| 玛曲县| 旬阳县| 昌邑市| 资源县| 亳州市| 兰考县| 宜春市| 周宁县| 南召县| 嘉禾县| 东乡县| 宣化县| 抚远县| 中江县| 磐石市| 桐柏县| 济南市| 信阳市| 三亚市| 尖扎县| 宁夏| 杨浦区| 陵水| 略阳县| 小金县| 定远县| 青海省| 东乌珠穆沁旗| 扎鲁特旗| 鄂伦春自治旗| 巴东县| 临猗县| 新丰县| 白山市| 武夷山市| 宜阳县| 池州市| 县级市| 裕民县| 安康市|