大家好,欢迎来到IT知识分享网。
命名空间
C++中什么是命名空间?
(个人理解,仅供参考)
就像C++本身中面向对象中的类,是一个相对封闭的结构,将具有某一特定属性的数据、函数、类对象等归为一类放置在该空间内,这个应该是命名空间的主要作用,即模块化。
然后,在各个该类型的结构(空间)中,可能会出现相同名称的变量、函数、类等,那么通过不同命名空间的名称来调用,就可以让程序精确地调用。
比如,A命名空间中有个常量WIDTH,B命名空间中也有个常量WIDTH,那么就可以使用A::WIDTH和B::WIDTH来调用加以区分。
命名空间的定义语法
C++中命名空间的定义使用namespace关键字来实现,具体语法如下:
namespace namespace_name { code_block; }
命名空间的使用语法
使用命名空间,如果该命名空间存在于某一个头文件内(非当前文件),则需要先导入包含进该头文件,然后使用using来调用该命名空间:
using namespace namespace_name;
使用命名空间中的变量、函数、类等,可以通过C++的作用域解析运算符来实现(具体可参考下方的实例代码):
::
命名空间实例代码
#include <iostream> using namespace std; namespace test_namespace{ class Fruit{ public: Fruit(string n){ name = n; } string name; }; const string Category = "水果"; } int main(){ // 因为test_namespace命名空间就在当前文件中,所以不需要另外导入头文件 test_namespace::Fruit apple("苹果"); cout << apple.name << "是一种" << test_namespace::Category << endl; return 0; }
代码编译运行,得到输出:
苹果是一种水果
原文:C++ 命名空间的定义,及使用
免责声明:内容仅供参考,不保证正确性。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/91730.html