프로그래밍/C++
C++ 네임 스페이스
swedu
2023. 2. 17. 06:03
728x90
반응형
2023.02.17 최초작성
C++에서 네임스페이스는 범위에 이름을 지정하는 것이다. 네임스페이스의 범위에 접근할 때는 콜론 2개를 연속으로 쓴 범위 지정 연산자를 사용한다.
#include <iostream>
using namespace std;
void fun01() { // global namespace에 속한 함수
cout << "::fun01 실행" << endl;
}
void fun02() { // global namespace에 속한 함수
cout << "::fun02 실행" << endl;
}
int a(1); // global namespace에 속한 변수
namespace apple {
int a(10);
void fun02() {
cout << "apple::fun02 실행" << endl;
}
void fun01() {
cout << "apple::fun01 실행" << endl;
fun02();
}
namespace banana {
int a(20);
void fun01() {
cout << "apple::banana::fun01 실행" << endl;
}
}
namespace carrot {
int a(30);
void fun01() {
cout << "apple::carrot::fun01 실행" << endl;
}
}
}
namespace donut {
int a(40);
void fun01() {
cout << "donut::fun01 실행" << endl;
}
}
int main() {
::fun01();
apple::fun01();
apple::banana::fun01();
apple::carrot::fun01();
donut::fun01();
cout << ::a << endl;
cout << apple::a << endl;
cout << apple::banana::a << endl;
cout << apple::carrot::a << endl;
cout << donut::a << endl;
return EXIT_SUCCESS;
}
[실행 결과]
::fun01 실행
apple::fun01 실행
apple::fun02 실행
apple::banana::fun01 실행
apple::carrot::fun01 실행
donut::fun01 실행
1
10
20
30
40
728x90
반응형
728x90
반응형