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