네임스페이스
2024. 6. 24. 14:39ㆍC++
네임스페이스란?
C++가 지원하는 각종 요소들(변수, 함수, 클래스 등)을 한 범주로 묶어주기 위한 문법이다.
네임스페이스의 블록 내부에 선언하는 변수나 함수들은 모두 명시한 '이름'에 속하게 된다. 내부에서 변수나 함수를 선언한다면 모두 해당 네임스페이스에 속한다. 위의 예시에선 TEST안에 있는 g_nData와 TestFucn가 TEST라는 네임스페이스에 속한다.
이를 통해 우리가 입,출력을 할 때 사용되는 cin,cout,endl등은 모두 std라는 네임스페이스의 소속이라는 사실을 알 수 있다.
우리는 이런 네임스페이스를 생략할 수 있는 방법이 있다.
using 선언을 통해 네임스페이스를 미리 선언한 후 네임스페이스를 생략하는 방법이다.
위와 다른점은 using 선언을 통해 std와 TEST 네임스페이스를 미리 선언해서 std안에 속해있는 cout과 endl을 호출할 때 std를 생략해준 점과, 마찬가지로 g_nData를 호출할 때 TEST 네임스페이스를 생략해준 점이다.
코드를 작성할 때 이와 같이 cin, cout, endl 과 같은 명령어나 TEST와 같은 우리가 직접 만든 네임스페이스 안에서의 기능을 호출할 때마다 네임스페이스를 작성하는 것은 매우 번거로우니 using을 통해 미리 네임스페이스를 선언한 후 코드를 작성하는 것이 더 효율적이다.