C++?雙冒號::符號詳解
一、作用域符號:
作用域符號 :: 的前面一般是類名稱,后面一般是該類的成員名稱,C++ 為例避免不同的類有名稱相同的成員而采用作用域的方式進(jìn)行區(qū)分。
例如:A,B 表示兩個類,在 A,B 中都有成員 member。
那么:
1、A::member就表示類A中的成員member。
2、B::member就表示類B中的成員member。
二、全局作用域符號:
全局作用域符號:當(dāng)全局變量在局部函數(shù)中與其中某個變量重名,那么就可以用 :: 來區(qū)分,例如:
char a; //全局變量 void test() { char a; //全局變量 char(局部變量) = char(局部變量)*char(局部變量); ::char(全局變量) =::(全局變量) *char(全局變量) }
三、作用域分解運(yùn)算符:
:: 是 C++ 里的作用域分解運(yùn)算符,“比如聲明了一個類 A,類 A 里聲明了一個成員函數(shù) void f(),但沒有在類的聲明里給出f的定義,那么在類外定義 f 時,就要寫成 voidA::f(),表示這個 f() 函數(shù)是類 A 的成員函數(shù)。例如:
class CA { public: int ca_var; int add(int a, int b); int add(int a); } //那么在實(shí)現(xiàn)這個函數(shù)時,必須這樣寫: int CA::add(int a, int b) { return a + b; } //另外,雙冒號也常常用于在類變量內(nèi)部作為當(dāng)前類實(shí)例的元素進(jìn)行表示,比如: int CA::add(int a) { return a + ::ca_var; } //表示當(dāng)前類實(shí)例中的變量ca_var。
到此這篇關(guān)于C++ 雙冒號::符號詳解的文章就介紹到這了,更多相關(guān)C++ 雙冒號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語言模擬內(nèi)存函數(shù)分析之mencpy與memmove
這篇文章主要介紹了C語言詳解如何模擬內(nèi)存函數(shù),用到了mencpy與memmove兩個函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03C/C++動態(tài)分配與釋放內(nèi)存的區(qū)別詳細(xì)解析
以下是對C與C++中動態(tài)分配與釋放內(nèi)存的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下2013-09-09C++中String的語法及常用接口的底層實(shí)現(xiàn)詳解
在C語言中,string是一個標(biāo)準(zhǔn)庫類(class),用于處理字符串,它提供了一種更高級、更便捷的字符串操作方式,string 類提供了一系列成員函數(shù)和重載運(yùn)算符,以便于對字符串進(jìn)行操作和處理,本編文章會對C++中的 string 進(jìn)行詳解,希望本篇文章會對你有所幫助2023-06-06