• namespace(이름공간)
C++ 에서는 동일한 함수,변수의 충돌을 막기 위해 이름공간이 존재합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
namespace Test1
{
    void Func() {}
}
 
namespace Test2
{
    void Func() {}
}
 
int main()
{
    Test1::Func();
    Test2::Func();
    return 0;
}
cs


다음과 같이 이름공간을 부여해 함수의 충돌을 막을 수 있는 코드를 작성할 수 있습니다.


  • using
이름공간을 사용함으로써 타이핑을 줄일 수 있습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
using namespace Test1;
//using namespace Test2;
 
namespace Test1
{
    void Func() {}
}
 
namespace Test2
{
    void Func() {}
}
 
int main()
{
    Func();            //Test1::Func();
    Test1::Func();
    Test2::Func();
    return 0;
}
cs


하지만 4번째 줄의 주석을 풀면 Func() 함수 모호함이 생기기 때문에 에러가 발생할 수 있으니

조심히 다뤄서 사용하시면 좋겠습니다.

'프로그래밍 > C++' 카테고리의 다른 글

C++ 조정자(Manipulator)  (0) 2019.01.02
Posted by Dongkey
,