C++using聲明和using編譯指令
1.using聲明
C++當(dāng)中提供了兩種機(jī)制(using聲明和using編譯指令)來(lái)簡(jiǎn)化對(duì)名稱空間中名稱的使用。using聲明使特定的標(biāo)識(shí)符keys,using編譯指令使整個(gè)名稱空間可用。
using聲明由關(guān)鍵字using和被限定的名稱組成:
using A::fetch;
using聲明將特定的名稱添加到它所屬的聲明區(qū)域中,完成聲明之后,我們可以使用fetch代替A::fetch了。
我們來(lái)看一個(gè)具體的例子:
namespace A {
? ? double bucket(double n) {..}
? ? double fetch;
? ? struct Hill {...};
}
int main () {
? ? using A::fetch;
? ? cin >> fetch;
? ? fetch += 1.0;
? ? A::Hill hill;
}如果我們?cè)诤瘮?shù)外使用using聲明,會(huì)將名稱添加到全局名稱空間中:
using A::fetch;
void test() {
? ? cout << fetch << endl;
}
int main () {
? ? cin >> fetch;
? ? fetch += 1.0;
? ? A::Hill hill;
}2.using編譯指令
using聲明只能使一個(gè)名稱可用,而using編譯指令可以使得所有的名稱都可用。using編譯指令由名稱空間和它前面的using namespace組成,它使得名稱空間中的所有名稱都可用。
如:
using namespace A;
在全局聲明區(qū)域使用using編譯指令,將使得該名稱空間的名稱全局可用。這種情況其實(shí)我們已經(jīng)非常熟悉了,因?yàn)槲覀円恢痹谟?code>using namespace std。
我們也可以在函數(shù)當(dāng)中使用using編譯指令:
int main () {
? ? using namespace A;
}
到此這篇關(guān)于C++using聲明和using編譯指令的文章就介紹到這了,更多相關(guān)C++using聲明和using編譯指令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++實(shí)現(xiàn)賓館房間管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)賓館房間管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
CMake 生成靜態(tài)庫(kù)與動(dòng)態(tài)庫(kù)的方法步驟
本文主要介紹了CMake 生成靜態(tài)庫(kù)與動(dòng)態(tài)庫(kù)的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
C?語(yǔ)言中布爾值的用法實(shí)戰(zhàn)案例
這篇文章主要為大家介紹了C語(yǔ)言中布爾值的用法實(shí)戰(zhàn)案例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12

