[C++] :: namespace

‎김미리·2025년 3월 22일

C++

목록 보기
2/2

1. namespace란?

  • C++에서 코드의 이름 영역을 정의하는데 사용됨
  • 동일한 이름의 변수, 함수, 클래스 등이 다른 맥락에서 사용될 수 있도록 구분하는 역할






2. namespace의 선언

namespace MyNamespace {
    int myVar = 42; // 변수 선언
    void myFunction() {
        cout << "Hello, Namespace!" << endl;
    }
}




3. namespace의 요소 접근 방법

  • 직접 참조
	// MyNamespace 안의 myVar 변수 사용
	cout << MyNamespace::myVar << endl;

	// MyNamespace 안의 myFunction 호출
	MyNamespace::myFunction();         
  • using 키워드
    // 네임스페이스 명시 없이 사용
	using namespace MyNamespace;
	cout << myVar << endl;  
	myFunction();
  • 부분 지정
	using MyNamespace::myVar;
    
    // myVar만 사용
	cout << myVar << endl; 




4. standard namespace(std)

C++ 표준 라이브러리는 모두 std라는 네임스페이스에 정의되어 있다. 예를 들어 std::cout, std::cin 등이 여기에 해당된다.

using namespace std;

// std::cout을 생략 가능
cout << "Hello, World!" << endl;  




5. 익명 namespace

namespace에 이름을 생략하면 해당 네임 스페이스의 요소는 파일 내에서만 사용 가능(로컬 네임스페이스)

namespace {
	// 이 변수는 파일 내에서만 접근 가능
    int localVar = 10; 
}

0개의 댓글