C++ “::” 作用域符 双冒号 实力解释
生活随笔
收集整理的這篇文章主要介紹了
C++ “::” 作用域符 双冒号 实力解释
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、
:: 是作用域符,是運算符中等級最高的,它分為三種:
1)global scope(全局作用域符),用法(::name)
2)class scope(類作用域符),用法(class::name)
3)namespace scope(命名空間作用域符),用法(namespace::name)
他們都是左關聯(left-associativity),他們的作用都是為了更明確的調用你想要的變量:
1.如在程序中的某一處你想調用全局變量a,那么就寫成::a;(也可以是全局函數)
2.如果想調用class A中的成員變量a,那么就寫成A::a;
3.另外一個如果想調用namespace std中的cout成員,你就寫成std::cout(相當于using namespace std;cout)意思是在這里我想用cout對象是命名空間std中的cout(即就是標準庫里邊的cout);
他們算是C++中的基礎,如果運用的好的話,你程序的出錯率也許會降很多,o~~~~~~~~~
#include <iostream> using namespace std;int count=0; // 全局(::)的countclass A { public:static int count; // 類A的count (A::count)}; // 靜態變量必須在此處定義 int A::count; //class scope(類作用域符),用法(class::name) int main() {::count=1; // 設置全局的count為1A::count=5; // 設置類A的count為2cout<<"類作用域"<<A::count<<endl;cout<<"全局作用"<<count<<endl;// int count=3; // 局部count // count=4; // 設置局部的count為4return 0; } #include <iostream>int main() {std::cout << "命名空間作用域符----"<<"Hello, World!" << std::endl;return 0; }總結
以上是生活随笔為你收集整理的C++ “::” 作用域符 双冒号 实力解释的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c++ :: 用法一
- 下一篇: c++ static 静态变量初始化