가취공부하자

[c++] namespace 본문

c++

[c++] namespace

keepGGoing 2022. 10. 31. 22:15

[기본개념]

c++에는 다양한 내부 식별자(identifier)가 존재합니다. (변수, 함수, 구조체, 클래스 등..)

프로젝트가 커지거나 프로그램이 복잡해지면 내부 식별자간 충돌할 가능성이 높아집니다. 이러한 충돌문제를 c++ 에선 namespace로 해결하고 있습니다.

 

namespace Book
{
	void print(); 
    int price;
}

namespace Movie
{
	void pirnt();
    int price;
}

[namespace 접근방법]

1. 완전 한정 이름 (Fully Qualified Name)

Book::print();

2. 선언 사용 (declaration)

using Book::price;
price = 4;

3. 지시어 사용 (Directive)

using namespace Movie;
print();

가장 좋은 namespace 사용방법은 완전한정이름으로 사용하는 것이 좋습니다. Book::init();

 

[namespace std]

c++ 표준 라이브러리 형식과 함수들은 "std"라는 namespace 안에서 제공되고 있습니다.

ex) min, max,count() 함수 등등..