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;

}

相关推荐
万添裁1 小时前
huawei 机考
算法·华为·深度优先
IronMurphy8 小时前
【算法四十三】279. 完全平方数
算法
墨染天姬8 小时前
【AI】Hermes的GEPA算法
人工智能·算法
papership8 小时前
【入门级-数据结构-3、特殊树:完全二叉树的数组表示法】
数据结构·算法·链表
smj2302_796826528 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
九转成圣9 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
Beginner x_u9 小时前
链表专题:JS 实现原理与高频算法题总结
javascript·算法·链表
SmartRadio9 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
laowangpython10 小时前
Rust 入门:GitHub 热门内存安全编程语言
开发语言·其他·rust·github
我叫汪枫10 小时前
在后台管理系统中,如何递归和选择保留的思路来过滤菜单
开发语言·javascript·node.js·ecmascript