1. 程式人生 > >C++中::的作用

C++中::的作用

1、

作用域符號::的前面一般是類名稱,後面一般是該類的成員名稱,C++為例避免不同的類有名稱相同的成員而採用作用域的方式進行區分
如:A,B表示兩個類,在A,B中都有成員member。那麼
      A::member就表示類A中的成員member
      B::member就表示類B中的成員member

2、

全域性作用域符號:當全域性變數在區域性函式中與其中某個變數重名,那麼就可以用::來區分如:

char    zhou;    //全域性變數

void    sleep()

      char    zhou;    //區域性變數

      char(區域性變數) = char(區域性變數) *char(區域性變數) ; 

     ::char(全域性變數) =::char(全域性變數) *char(區域性變數);

3、

::是C++裡的“作用域分解運算子”。比如聲明瞭一個類A,類A裡聲明瞭一個成員函式voidf(),但沒有在類的聲明裡給出f的定義,那麼在類外定義f時,就要寫成voidA::f(),表示這個f()函式是類A的成員函式。例如

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 class CA { public: int ca_var; int add(int a,
int b); int add(int a); }; //那麼在實現這個函式時,必須這樣書寫: int CA::add(int a, int b) { return a + b; } //另外,雙冒號也常常用於在類變數內部作為當前類例項的元素進行表示,比如: int CA::add(int a) { return a + ::ca_var; } //表示當前類例項中的變數ca_var。