【自学C++】C++ std命名空间

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 限定符和直接使用命名空间限制访问。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

i白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值