改天學習一下。
*********************************************************************************************
*********************************************************************************************
*********************************************************************************************
1、 作用域符號::的前面一般是類名稱,后面一般是該類的成員名稱,C++為例避免不同的類有名稱相同的成員而采用作用域的方式進行區分如:A,B表示兩個類,在A,B中都有成員member。那么A::member就表示類A中的成員memberB::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的成員函數。例如[cpp] view plain copy01 class CA { 02 public: 03 int ca_var; 04 int add(int a, int b); 05 int add(int a); 06 }; 07 08 //那么在實現這個函數時,必須這樣書寫: 09 int CA::add(int a, int b) 10 { 11 return a + b; 12 } 13 14 //另外,雙冒號也常常用于在類變量內部作為當前類實例的元素進行表示,比如: 15 int CA::add(int a) 16 { 17 return a + ::ca_var; 18 } 19 20 //表示當前類實例中的變量ca_var。
新聞熱點
疑難解答
圖片精選