使用指示詞 (C++)
using指示詞可以讓在名稱命名空間而不使用命名空間名稱與明確的限定詞。 當然,完整的限定名稱仍可用來提高可讀性。
using namespace [::] [ nested-name-specifier ] namespace-name
備註
請注意之間的差異使用指示詞和 using 宣告 : using宣告可讓個別的名稱,以便進行無限制地, using指示詞可以讓以無限制使用命名空間中的所有名稱。
如果區域變數有相同的名稱當做命名空間變數,則會隱藏命名空間的變數。 它是做為全域變數同名的命名空間變數錯誤。
注意事項 |
---|
讓您using指示詞,以減少潛在的無法預期的行為與 IntelliSense 的原始程式檔的開頭。 |
標準命名空間
標準 ANSI/ISO C++ 會要求您明確地宣告在標準程式庫的命名空間。 比方說,當使用 iostream,您必須指定命名空間的cout下列方法之一:
std::cout (explicitly)
using std::cout(using宣告)
using namespace std(using指示詞)
/clr
下列範例顯示如何允許中的名稱。NET Framework 基底類別程式庫命名空間 而不使用 命名空間名稱與明確的限定詞。
// using_directive.cpp
// compile with: /c /clr
using namespace System::Reflection;
[assembly:AssemblyDescriptionAttribute("test")];
範例
// using_directive2.cpp
// compile with: /EHsc
#include <iostream>
int main() {
std::cout << "Hello ";
using namespace std;
cout << "World." << endl;
}