2、C++命名空间

命名空间

命名空间是一种用来避免命名冲突的机制;

原理是将一个全局的作用域分成一个个命名空间,每个命名空间是个单独的作用域,从而有效避免命名冲突。

注意:命名空间定义在全局

命名空间定义格式

使用:

#include<iostream>

namespace T

{

int a;

int b = 10;

int add(int a,int b)

{

return a + b;

}

namespace FUN

{

int a;

int b = 20;

}

}

int main()

{

std::cout << T::b << std::endl;

int res = T::add(3,4);

std::cout << res << std::endl;

std::cout << T::FUN::b << std::endl;

return 0;

}

命名空间的展开:

局部开放:

命名空间一个成员不限 使用命名空间::

using std::cout;

#include<iostream>

using std::cout;

int main()

{

int a = 20;

cout << a << std::endl;

return 0;

}

全部开发:

using namespace 命名空间的名字

using namespace std;

#include<iostream>

using namespace std;

int main()

{

std::cout << "hello world";

int a = 20;

cout << a << endl;

return 0;

}

相关推荐
白山编程大哥2 分钟前
C语言篇:语法进阶
c语言·数据结构·算法
jimy112 分钟前
虚函数vtable,链接时看到构造函数,linker把符号地址写入vtable(三)
开发语言·c++
ss27316 分钟前
AI全栈实战 | 3.3-02 Python 并发:有 GIL 为什么还用多线程,asyncio 和 JS 事件循环同源不同味
开发语言·javascript·python
菜鸟~noob23320 分钟前
【电子战】第20篇:凸优化与对数障碍法【含matlab代码】
开发语言·matlab
Wang's Blog28 分钟前
Java框架 SpringCloud 快速入门: 服务拆分案例 Demo
java·开发语言·spring cloud
Doubbbbbbble云40 分钟前
基于流处理框架的实时算法实现策略4
算法
小小龙学IT44 分钟前
Python SQLAlchemy 2.0 深度解析:从 Core 到 ORM 的数据访问双引擎
开发语言·数据库·python
2601_962885721 小时前
如何用 Python 计算 ROC 变动率指标做动量分析?
开发语言·python·算法
胡家伟++1 小时前
我用 48 轮 AI 思维链做了一次研究战略推演:从“验证信号危机“到“验证栈“统一框架
人工智能·算法
潼心1412o1 小时前
C++初阶(长期更新)第9讲:string(上)
开发语言·c++