扩展名称空间和未命名名称空间

在这里,我们将看到如何扩展某些命名空间,以及如何使用未命名或匿名命名空间。

有时我们可以定义一个命名空间。然后,我们可以使用相同的定义再次编写命名空间。如果第一个成员具有某个成员,第二个成员具有其他一些成员,则将扩展命名空间。我们可以使用该命名空间中的所有成员。

示例

#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

以上是 扩展名称空间和未命名名称空间 的全部内容, 来源链接: utcz.com/z/350242.html

回到顶部