命名空间using namespace std

文章目录

    • 为什么要使用命名空间
    • 如何自主定义命名空间
    • 命名空间的使用方法

为什么要使用命名空间

命名空间的存在是为了提高代码效率,有效的管理编写代码过程中常用的一些常见关键字

cpp 复制代码
#include <vector>
#include <iostream>
using namespace std;

void main() {
    cout << "hello,world" << endl;
    
    }
    

在上面的一段代码中引入了 <vector>和<iostream>两个头文件,cout函数的具体如何实现的被编写在<iostream>头文件中,但是机器还是不认识cout这个函数,因此在为了让机器知道cout这个名字对应于头文件的cout具体实现,引入标准命名空间std(Standard namespace),这样我们直接就可以访问cout函数了,当然在std中还有很多其他常用的函数和对象,比如cin,endl,...

如何自主定义命名空间

cpp 复制代码
#include <vector>
#include <iostream>
using namespace std;

namespace N1 {
    int a = 8848;
    int fun() {
        return 12138;
    }
}
using namespace N1;

void main() {
    cout << a << endl;
    cout << fun() << endl;
    cout << "hello,world" << endl;
    system("pause");
    
    }
    

这里需要注意的是命名空间的声明需要放在命名空间定义之后

命名空间的使用方法

使用方法大致分为以下三种:

1.声明命名空间名字

cpp 复制代码
使用using namespace 命名空间名引入,如using namespace std;

2.声明命名空间中成员并将成员引入

cpp 复制代码
#include <vector>
#include <iostream>
using std::cout;
using std::endl;

void main() {

    cout << "hello,world" << endl;
    system("pause");
    
    }
    

3.在使用时直接引入

cpp 复制代码
#include <vector>
#include <iostream>

void main() {

    std::cout << "hello,world" <<std:: endl;
    system("pause");
    
    }
    
相关推荐
脑子慢且灵几秒前
蓝桥杯冲刺:一维前缀和
算法·leetcode·职场和发展·蓝桥杯·动态规划·一维前缀和
genispan2 分钟前
QT/C++ 多线程并发下载实践
开发语言·c++·qt
-代号952721 分钟前
【JavaScript】十三、事件监听与事件类型
开发语言·javascript·ecmascript
姜威鱼25 分钟前
蓝桥杯python编程每日刷题 day 21
数据结构·算法·蓝桥杯
CYRUS STUDIO33 分钟前
Unidbg Trace 反 OLLVM 控制流平坦化(fla)
android·汇编·算法·网络安全·逆向·ollvm
ゞ 正在缓冲99%…40 分钟前
leetcode22.括号生成
java·算法·leetcode·回溯
写代码的小王吧44 分钟前
【Java可执行命令】(十)JAR文件签名工具 jarsigner:通过数字签名及验证保证代码信任与安全,深入解析 Java的 jarsigner命令~
java·开发语言·网络·安全·web安全·网络安全·jar
小卡皮巴拉1 小时前
【力扣刷题实战】矩阵区域和
开发语言·c++·算法·leetcode·前缀和·矩阵
WG_171 小时前
第五章.图论
算法·图论
努力搬砖的咸鱼1 小时前
Qt中的数据解析--XML与JSON处理全攻略
xml·开发语言·qt·json