今天,边肖将与您分享C命名空间的介绍和使用。边肖觉得内容挺好的,现在分享给大家,很有参考价值。有需要的朋友一起看看吧。
目录
自定义命名空间命名空间成员的命名空间方法的角色概述
概述
命名空间可以帮助我们区分函数、类、变量等。在不同的库中具有相同的名称。使用名称空间定义上下文。命名空间定义了一个范围。
命名空间
为了解决C标准库中的标识符与程序中的全局标识符之间的命名冲突,以及不同库中的所有标识符之间的命名冲突,C标准库中的所有标识符都定义在一个名为std的命名空间中。当在程序中使用C标准库时,std被用作限制。
我们在编写“Hello World”时使用了名称空间:
命名空间的作用
名称空间是ANSI C引入的范围,可以由用户命名。它用于处理程序中常见的同名冲突。在C程序中,有大量的变量、函数和类名。如果都存在于同一个全局命名空间中,会导致很多冲突。
用户定义的函数与标准库函数同名。
程序中使用的名称与第三方库中的名称相同。
同一项目的不同模块中的名称冲突
名称空间的机制,它将其中声明的名称本地化:
可以在不同的上下文中使用相同的名称,而不会发生名称冲突。
C中的标准库是在std命名空间中定义的,减少了与用户自定义名称的冲突。
在自己的程序中创建自己的命名空间,以避免本地化名称与外界的冲突。
自定义命名空间
我们可以定义自己的名称空间。我们将一些全局实体与其他全局实体分开,将它们放在每个名称空间中。
格式:
命名空间命名空间名称{
宣言;
}
变量(可以初始化)和常量
函数(可以定义或声明)
结构
种类
模板
名称空间(在一个名称空间中定义另一个名称空间,即嵌套的名称空间)
名称空间的作用是建立一些单独的作用域,并分隔一些全局实体,以避免名称冲突。
命名空间成员的方法
一般方法:引用命名空间成员时,用命名空间名称来限定命名空间成员,以区分同名的标识符。(命名空间:命名空间成员名称)
简化名称空间成员的机制:
使用命名空间别名:命名空间TV=Television//电视相当于电视。
使用格式:使用ns1:Student使用命名空间成员名称;//Student相当于ns1:Student
使用:使用名称空间名称
案例
h1.h:
#ifndef项目8_H1_H
#定义项目8_H1_H
命名空间厨房{
类别表{
私人:
int legs
int价格;
公共:
Table(int l,int p){
腿=l;
价格=p;
}
};
}
#endif //PROJECT8_H1_H
h2.h:
#ifndef项目8_H2_H
#定义项目8_H2_H
命名空间办公室{
类别表{
私人:
int行;
int cols
公共:
Table(int r,int c){
rows=r;
cols=c;
}
};
}
#endif //PROJECT8_H2_H
mian.cpp:
#包括iostream
#包含“h1.h”
#包含“h2.h”
使用命名空间std
int main() {
厨房:t1桌(6300);
办公室:表t2(6,2);
返回0;
}
关于C/C命名空间的详细解释和功能,本文到此结束。有关C命名空间的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。