1.什么是命名空间?
命名空间就是一个命名的范围区域,程序在这个特定的范围区域内创建的所有标识符都是唯一的
2.使用命名空间的原因?
在一个应用程序的多个文件中可能存在同名字的全局对象,这样会导致程序的链接错误,所以使用命名空间是解决这类错误的最佳方式
3.命名空间如何定义?
//格式
namespace 名称
{
常量,变量,函数等对象的定义
}
//举例
namespace MyName
{
int iint1=10;
int iint2=20;
};
4.如何引用命名空间中的成员?
//格式:
命名空间名称::成员;
//举例:
//方式1:
MyName::ilnt1=30;
//方式2:
using namespace 命名空间名称;
using namespace MyName;
ilnt1=10;
5.在多个文件中定义命名空间
在定义命名空间的时候,通常在头文件(.h文件)中声明命名空间的函数,在源文件(.cpp文件)中命名定义命名空间的函数
//在头文件中声明函数:
namespace Output
{
void Demo //声明函数
};
//在源文件中定义函数
void Output::Demo()
{
cout<<"This is function\0";
}
6.定义嵌套的命名空间
//命名空间可以定义在其他的命名空间内部
namespace Output
{
void show()
{
cout<<"This is a function!"<<endl;
}
namespace MyName
{
void Demo()
{
cout<<"MyName is a function!"<<endl;
}
}
}
//如果外部和内部命名空间都出现了相同的标识符,要同时用外部和内部的命名空间名称作为前缀
7.定义未命名的命名空间
//C++中允许省略命名空间的名称来简单定义未命名的命名空间
namespace
{
int lnt1=10;
int lnt2=20;
}