1、为何C++要引入命名空间
命名空间解决一个大的项目中命名冲突的问题,一个大的C项目中,成千上万的函数容易出现重名的问题,导致错误重载或者其他错误,故C++引入命名空间,解决重名和分类的问题。
2、如何使用命名空间
命名空间可以在全局作用域或者其它作用域内部定义,但是不能在函数或者类的内部定义。
标准C++库中的所有组件都是在一个被称为std的名字空间中声明和定义的
它可以这样访问:
std::cin>>i; //显式的从std中使用cin 其中::是作用于解析符。
又或者可以使用using声明:
using std::cin
int main()
{
int i;
cin>>i;
} 但是,上述两种方法都太过繁琐,在 采用标准C++的平台上使用标准C++库中的组件,只要写一个using指示符:
using namespace std;
int main()
{
int i;
cin>>i;
cout<<i;
} //所有存在命名空间std里的库函数都可以直接访问到除了系统的std,我们还可以自己定义命名空间
namespace name1
{
int a=0
} //命名空间name1里有一个变量a
namespace name2
{
int a=1;
} //命名空间name2里有一个变量a
name1::a=6;
name2::a=7;
//因为两个a处于不同的命名空间,所以访问时不发生冲突
实际开发中若有必要,我们也可以自己定义命名空间。
以上是我对命名空间学习后的心得,与大家分享~
转载请注明原文地址: https://ju.6miu.com/read-1297995.html