C++之std命名空间

 更新时间:2023年08月07日 09:09:31   作者:i白  
这篇文章主要介绍了C++之std命名空间使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

C++ std命名空间

C++ 中 std 命名空间 是 C++ 中标准库类型对象的命名空间。

我们常用的输入和输出 函数 都是定义在 std 命名空间中的,因此,我们需要使用输入和输出,必须要引入 std 命名空间。

要引用一个命名空间中的内容,有三种方法,分别为使用 using 引入命名空间、使用 using 限定符和直接使用命名空间限制访问。

using引入命名空间

语法

using namespace std;// cout

说明

我们直接使用 using 完全引入了 std 命名空间,接下来,我们就可以直接使用 std 命名空间中的所有内容了。

使用using限定符

语法

using std::cout;using std::cin;// cout// cin

说明

这里,我们仅仅使用了 using 引入了 std 命名空间中的 cout 和 cin ,因此,我们接下来在使用 cout 和 cin 时,不再需要使用命名空间了。

显式引用

语法

//std::cout//std::cin

说明

我们直接使用 std:: 的形式,显式的指定我们使用的 cout 是 std 命名空间的,使用的 cin 也是 std 命名空间的。

C++ std命名空间详解

我们使用的输入输出函数都是定义在 std 命名空间中的,我们可以在 dev-c++ 开发环境中,打开 iostream 头文件,接着,我们可以看到 std 命名空间,

如下:

请添加图片描述

我们可以看到,这里使用了 namespace 定义了 std 命名空间,接着,往下看,我们可以看到,如下代码:

请添加图片描述

从这里,我们可以看出,cin、cout、cerr 和 clog 都是定义在 std 命名空间中的。

案例

C++ using引入命名空间

使用 using 完全引入了 std 命名空间

#include <iostream>
using namespace std;
int main()
{
	cout << "嗨客网(www.haicoder.net)\n" << endl;
    cout << "haicoder" << endl;
    cerr << "Hello HaiCoder" << endl;
    return 0;
}

程序运行后,控制台输出如下:

请添加图片描述

我们直接使用了 using 引入了整个 std 命名空间,接下里,我们就可以直接使用 std 命名空间中的所有内容了。

使用using限定符

使用 using 限定符,引入 std 命名空间指定内容

#include <iostream>
using std::cout;
int main()
{
	std::cout << "嗨客网(www.haicoder.net)\n" << std::endl;
    cout << "haicoder" << std::endl;
    std::cerr << "Hello HaiCoder" << std::endl;
    std::clog << "Hello C++" << std::endl;
    return 0;
}

程序运行后,控制台输出如下:

请添加图片描述

我们使用了 using 仅仅引入了 cout,因此,接下来,我们使用 cout 时,不需要再指定命名空间了,但使用 cerr 和 clog 时,必须显式指定命名空间,不然会报错。

使用命名空间限制访问

直接使用命名空间,限制访问

#include <iostream>
int main()
{
	std::cout << "嗨客网(www.haicoder.net)\n" << std::endl;
    std::cout << "haicoder" << std::endl;
    std::cerr << "Hello HaiCoder" << std::endl;
    std::clog << "Hello C++" << std::endl;
    return 0;
}

程序运行后,控制台输出如下:

请添加图片描述

这次,我们没有使用任何的 using 引入命名空间,而是直接使用了命名空间限制说明了我们访问的命名空间的内容。

C++ std命名空间教程

在 C++ 中 std 命名空间是 C++ 中标准库类型对象的命名空间。

我们常用的输入和输出函数都是定义在 std 命名空间中的,因此,我们需要使用输入和输出,必须要引入 std 命名空间。

要引用一个命名空间中的内容,有三种方法,分别为使用 using 引入命名空间、使用 using 限定符和直接使用命名空间限制访问。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C++实现LeetCode(309.买股票的最佳时间含冷冻期)

    C++实现LeetCode(309.买股票的最佳时间含冷冻期)

    这篇文章主要介绍了C++实现LeetCode(309.买股票的最佳时间含冷冻期),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • C语言中变参函数传参的实现示例

    C语言中变参函数传参的实现示例

    本文主要介绍了C语言中变参函数传参,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • C语言输入三角形边长判断其类型并输出面积实例代码

    C语言输入三角形边长判断其类型并输出面积实例代码

    这篇文章主要介绍了C语言输入三角形边长判断其类型并输出面积实例代码,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Linux UDP服务端和客户端程序的实现

    Linux UDP服务端和客户端程序的实现

    这篇文章主要介绍了Linux UDP服务端和客户端程序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • C++ 类的赋值运算符''''=''''重载的方法实现

    C++ 类的赋值运算符''''=''''重载的方法实现

    这篇文章主要介绍了C++ 类的赋值运算符'='重载的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • C++实现控制台版扫雷程序

    C++实现控制台版扫雷程序

    这篇文章主要为大家详细介绍了C++实现控制台版扫雷程序,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • Opencv基于CamShift算法实现目标跟踪

    Opencv基于CamShift算法实现目标跟踪

    这篇文章主要为大家详细介绍了Opencv基于CamShift算法实现目标跟踪,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • C++ COM编程之接口背后的虚函数表

    C++ COM编程之接口背后的虚函数表

    这篇文章主要介绍了C++ COM编程之接口背后的虚函数表,COM的背后,就是接口,而接口的背后,就是虚函数表,需要的朋友可以参考下
    2014-10-10
  • 详解C++设计模式编程中策略模式的优缺点及实现

    详解C++设计模式编程中策略模式的优缺点及实现

    这篇文章主要介绍了C++设计模式编程中策略模式的优缺点及实现,文中讨论了策略模式中设计抽象接口的继承和组合之间的区别,需要的朋友可以参考下
    2016-03-03
  • C++ 实现LRU 与 LFU 的缓存算法

    C++ 实现LRU 与 LFU 的缓存算法

    设计和实现一个LRU 缓存机制。其支持获取数据 get 和 写入数据 put,设计并实现最少访问频率(LFU)缓存的数据结构。LFU的每个数据块都有一个引用计数,所有数据块按照引用计数排序,具有相同引用计数的数据块则按照时间进行排序。其支持get 和 put,具体了解请看下文
    2021-09-09

最新评论