【C++】一文搞懂C++中的std::是什么
1.C++中的std::是什么?
std:: 是个名称空间标示符,C++标准库中的函数或者对象都是在命名空间std中定义的,所以我们要使用标准函数库中的函数或对象都要使用std来限定。
标准库在名字空间中被指定为std,所以在使用标准库中的函数或者对象的时候要加上std::,这样编译器就会明白我们调用的函数或者对象是名字空间std中的。
2.那么什么是C++标准库呢?
C++标准库,C++ Standard Library,是类库和函数的集合,其使用核心语言写成,由c++标准委员会制定,并不断维护更新。
C++强大的功能来源于其丰富的类库及库函数资源。在C++开发中,要尽可能地利用标准库完成,这样可以降低成本,提高编程效率,保证程序质量,又能保持编程风格一致性。
C++标准库又分为标准函数库和面向对象类库。
标准函数库包括:输入/输出 I/O、字符串和字符处理、数学、时间、日期和本地化、动态分配、其他、宽字符函数。
面向对象类库包括:标准的 C++ I/O 类、String 类、数值类、STL 容器类、STL 算法、STL 函数对象、STL 迭代器、STL 分配器、本地化库、异常处理类、杂项支持库。
3.那么在什么时候要用到std::,什么时候不需要用呢?
一般来说,要调用C++标准库时,要写上std::。
如果使用非标准库文件iostream.h,不用写。
如:#include<iostream.h>#include<iostream.h> int main() { cout<<"hello world"; //而不是std::cout<<"hello world"; cout<<endl; //而不是std::cout<<std::endl; return 0; }
4.一种更简单的方法,不需要写std::
直接使用using namespace std来代替std::。
using namespace std 告诉编辑器我们将要使用空间std中的函数或者对象。
如:using namespace std;
#include<iostream> using namespace std; int main() { cout<<"hello world"; cout<<endl; return 0; }