Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

네임스페이스 및 무명의 네임스페이스 확장

<시간/>

여기서 우리는 일부 네임스페이스를 확장하는 방법과 이름이 없거나 익명의 네임스페이스를 사용하는 방법을 볼 것입니다.

때때로 우리는 하나의 네임스페이스를 정의할 수 있습니다. 그런 다음 동일한 정의로 네임스페이스를 다시 작성할 수 있습니다. 첫 번째 멤버에 일부 멤버가 있고 두 번째 멤버에 다른 멤버가 있으면 네임스페이스가 확장됩니다. 해당 네임스페이스의 모든 구성원을 사용할 수 있습니다.

예시

#include <iostream>
using namespace std;
namespace my_namespace {
   int my_var = 10;
}
namespace my_namespace { //extending namespace
   int my_new_var = 40;
}
main() {
   cout << "The value of my_var: " << my_namespace::my_var << endl;
   cout << "The value of my_new_var: " << my_namespace::my_new_var << endl;
}

출력

The value of my_var: 10
The value of my_new_var: 40

명명되지 않은 네임스페이스에는 이름이 없습니다. 속성이 다릅니다.

  • 같은 프로그램에서 직접 사용할 수 있습니다.
  • 고유 식별자를 선언하는 데 사용됩니다.
  • 이 유형의 네임스페이스에서 네임스페이스의 이름은 컴파일러 자체에서 고유하게 생성됩니다.
  • 이 파일은 생성된 파일에서 액세스할 수 있습니다.
  • 이름 없는 네임스페이스는 변수의 정적 선언을 대체합니다.

예시

#include <iostream>
using namespace std;
namespace {
   int my_var = 10;
}
main() {
   cout << "The value of my_var: " << my_var << endl;
}

출력

The value of my_var: 10