다음을 통해 공유


using 지시문 (C++)

using 명령어는 네임스페이스에서 명칭이 분명한 한정자로서 네임스페이스-이름없이 사용될 수 있도록 합니다. 물론 가독성을 높이기 위해 완벽하고 정규화된 이름을 사용할 수 있습니다.

using namespace [::] [ nested-name-specifier ] namespace-name

설명

using 지시문과 using declaration 간의 차이점: using 선언은 개별 이름이 정규화 없이 사용될 수 있도록 허용하고, using 지시문은 네임스페이스의 모든 이름이 정규화 없이 사용될 수 있도록 허용합니다. 이 키워드는 형식 별칭으로 사용됩니다.

지역 변수에 네임스페이스 변수와 동일한 이름이 있을 경우 네임스페이스 변수가 숨겨집니다. 전역 변수와 같은 이름 가진 네임스페이스 변수가 있는 경우 오류가 발생합니다.

참고

using 지시문을 소스 코드 파일 시작 부분에 배치하여 IntelliSense에 예기치 않은 동작이 발생할 수를 줄입니다.

std 네임스페이스입니다.

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;
}
  

참고 항목

참조

네임스페이스 (C++)

C++ 키워드