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;

}

相关推荐
攀小黑3 分钟前
Java 多线程加锁 synchronized 关键字 字符串当做key
java·开发语言
生锈的键盘4 分钟前
推荐算法实践:movielens数据集
算法
董董灿是个攻城狮5 分钟前
Transformer 通关秘籍9:词向量的数值实际上是特征
算法
每次的天空12 分钟前
Kotlin 作用域函数:apply、let、run、with、also
android·开发语言·kotlin
林泽毅14 分钟前
SwanLab x EasyR1:多模态LLM强化学习后训练组合拳,让模型进化更高效
算法·llm·强化学习
小林熬夜学编程16 分钟前
【高并发内存池】第八弹---脱离new的定长内存池与多线程malloc测试
c语言·开发语言·数据结构·c++·算法·哈希算法
刚入门的大一新生22 分钟前
归并排序延伸-非递归版本
算法·排序算法
独好紫罗兰27 分钟前
洛谷题单3-P1980 [NOIP 2013 普及组] 计数问题-python-流程图重构
开发语言·python·算法
独好紫罗兰32 分钟前
洛谷题单3-P1009 [NOIP 1998 普及组] 阶乘之和-python-流程图重构
开发语言·python·算法
Taichi呀32 分钟前
PHP语言基础
android·开发语言·php