- namespace(命名空间)
- 作用
- 语法规则
- 使用命名空间
- 认识std
- 简单练习
1.作用
跟C语言中static作用类似,防止在开发大型应用程序,名字起冲突
大型应用程序开发的时候,不同的.cpp文件可以是不同的程序员写的,有可能会出现全局变量同名导致的冲突
C++采用了如下解决方案:
方案一: 跟C语言一样,用static限制全局变量的作用域
方案二: 使用命名空间
2.语法规则
namespace 命名空间的名字
{
需要包含的内容(变量,函数,类)
};
3.使用命名空间
写法一:
命名空间的名字::变量名;
命名空间的名字::函数名;
命名空间的名字::类名;
写法二:
using namespace 命名空间的名字; //声明我要使用的命名空间
使用的时候就可以不必写命名空间的名字::
4.认识std
using namespace std; //声明我要使用系统定义好的命名空间std
#include 头文件中定义命名空间
namespace std
{
cin;
cout;
endl;
}
在main.cpp文件中定一个命名空间
namespace T
{
int a=10086;
}
在另一个文件中pf.cpp声明命名空间,并且说明a是外部变量
namespace T
{
extern int a;//声明命名空间中的a是在外部定义的
}
在main.cpp中定义一个命名空间,里面有func()函数,在另一个文件中实现该空间的func函数,并输出一句话。
在pf.cpp实现func函数
#includeusing namespace std; //定义命名空间 namespace T { void func() { cout << "Hello World!" << endl; } }
在主函数通过namespace调用另一个文件的func()
#includeusing namespace std; //定义命名空间 namespace T { extern void func(); //说明这个函数在外部定义的 } int main() { //使用命名空间 T::func(); return 0; }
实现效果:



