1、 概念
(1)软件通常由多个模块组成,模块是由多人合作完成,不同的人分别完成不同的模块最后组成一个程序。
(2)不同人分别定义了函数和类,放在不同的头文件中
主文件需要这些函数和类时,就用#include命令行将这些头文件包括进来
(3)各头文件是由不同人设计的,可能不同头文件中用了相同名字定义的函数或类程序中出现命名冲突
(4)如果程序中用到第三方库,也容易产生同样的问题
===》c++中引入命名空间,用来处理程序中常见的同名冲突问题
(5)命名空间:程序设计者命名的内存区域
程序设计者根据需要指定有名字的命名空间,
将各命名空间中声明的标识符与该命名空间标识符建立关联
保证不同命名空间中的同名标识符不发生冲突
二、命名空间语法:
1、声明语法:
namespace 名字
{
声明变量、函数和类
}
2 使用命名空间中对象时,
方式1:
指明是哪一个命名空间,对象名前加命名空间名字
命名空间名::变量名
方式2:
Using namespace 命名空间名;
变量名
3 声明全局变量解决命名冲突 案例如下:
#include
using namespace std;
namespace exam1
{
int i = 0;
int j = 0;
}
namespace exa