이름공간은 기본 원리는 예를 들어보자
201호의 철수와 202호의 철수가 있다.
둘의 이름은 같은 철수이기 때문에 철수라고만 부르면 어디에 사는 철수인지 알 수 없기 때문에
***호에 사는 철수라 부르면 구분을 할 수 있다.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include <iostream>
namespace Number1
{
void SampleFunc(void)
{
std::cout<<"Number1의 함수"<<std::endl;
}
}
namespace Number2
{
void SampleFunc(void)
{
std::cout<<"Number2의 함수"<<std::endl;
}
}
int main(void)
{
Number1::SampleFunc(void);
Number2::SampleFunc(void);
return 0;
}
|
cs |
위와 같이
Number1의 SampleFunc함수와
Number2의 SampleFunc함수가 있습니다.
둘의 함수명은 같지만 다른 이름공간(namespace)에 있기 때문에 문제가 되지 않습니다.
호출할 때도 "Number1::SampleFunc(void)", "Number2::SampleFunc(void)" 와 같이 각각의 함수를 호출해
21행의 결과는 "Number1의 함수"
22행의 결과는 "Number2의 함수"가 호출됩니다.
'개인 공부 > 열혈 C++ 프로그래밍' 카테고리의 다른 글
| 참조자 (Reference) (0) | 2020.08.26 |
|---|