C++using聲明和using編譯指令
1.using聲明
C++當(dāng)中提供了兩種機(jī)制(using聲明和using編譯指令)來簡(jiǎn)化對(duì)名稱空間中名稱的使用。using聲明使特定的標(biāo)識(shí)符keys,using編譯指令使整個(gè)名稱空間可用。
using聲明由關(guān)鍵字using和被限定的名稱組成:
using A::fetch;
using聲明將特定的名稱添加到它所屬的聲明區(qū)域中,完成聲明之后,我們可以使用fetch代替A::fetch了。
我們來看一個(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 調(diào)用python出現(xiàn)異常的原因分析
本篇文章是對(duì)使用c語言調(diào)用python出現(xiàn)異常的原因進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05

