我是编程的初学者,我经常看到许多使用前缀 std
的程序,如果它们使用任何 std
函数,如 std::cout
、std::cin
等。我想知道它的用途是什么?它只是一种良好的编程方式还是还有更多?它对编译器有什么影响,还是可读性或什么?谢谢。
最佳答案
STL 类型和函数在名为 std
的命名空间中定义。 std::
前缀用于在不完全包含 std
命名空间的情况下使用类型。
选项1(使用前缀)
#include <iostream>
void Example() {
std::cout << "Hello World" << std::endl;
}
选项#2(使用命名空间)
#include <iostream>
using namespace std;
void Example() {
cout << "Hello World" << endl;
}
选项 #3(单独使用类型)
#include <iostream>
using std::cout;
using std::endl;
void Example() {
cout << "Hello World" << endl;
}
注意:包含整个 C++ 命名空间(选项 #2)还有其他含义,而不是不必为每个类型/方法加上前缀 std::
(尤其是在头文件中完成时) .许多 C++ 程序员避免这种做法,而更喜欢 #1 或 #3。
关于c++ - 什么是需要指定 "std"前缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5239882/