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 小时前
一步步实现字符串计算器:从「转整数」到「带括号与优化」
javascript·后端·算法
不想写代码的星星2 小时前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
CoovallyAIHub20 小时前
语音AI Agent编排框架!Pipecat斩获10K+ Star,60+集成开箱即用,亚秒级对话延迟接近真人反应速度!
深度学习·算法·计算机视觉
木心月转码ing1 天前
Hot100-Day14-T33搜索旋转排序数组
算法
会员源码网1 天前
内存泄漏(如未关闭流、缓存无限增长)
算法
颜酱1 天前
从0到1实现LFU缓存:思路拆解+代码落地
javascript·后端·算法
颜酱1 天前
从0到1实现LRU缓存:思路拆解+代码落地
javascript·后端·算法
CoovallyAIHub2 天前
Moonshine:比 Whisper 快 100 倍的端侧语音识别神器,Star 6.6K!
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
速度暴涨10倍、成本暴降6倍!Mercury 2用扩散取代自回归,重新定义LLM推理速度
深度学习·算法·计算机视觉