当我开始学习基本的C++时,我总是使用标题
#include <iostream>
using namespace std;
Run Code Online (Sandbox Code Playgroud)
我想问一下iostream的重点是什么.是否每次都需要作为标题?
amd*_*mdn 28
要读取或写入标准输入/输出流,您需要包含它.
int main( int argc, char * argv[] )
{
std::cout << "Hello World!" << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
除非你添加,否则该程序将无法编译 #include <iostream>
第二行不是必需的
using namespace std;
Run Code Online (Sandbox Code Playgroud)
什么,做的就是告诉编译器,在定义符号的名字std命名空间是被带入你的程序的范围,因此可以省略命名空间限定,并写例如
#include <iostream>
using namespace std;
int main( int argc, char * argv[] )
{
cout << "Hello World!" << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
请注意,您不再需要使用完全限定名称引用输出流,std::cout并且可以使用较短的名称cout.
我个人不喜欢在头文件的命名空间中引入所有符号...我会单独选择我想要更短的符号...所以我会这样做:
#include <iostream>
using std::cout;
using std::endl;
int main( int argc, char * argv[] )
{
cout << "Hello World!" << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但这是个人偏好的问题.
# 表示下一行是预处理器指令,应该在编译器编译之前由预处理器处理。
所以,#include是一个预处理器指令,它告诉预处理器在程序中包含头文件。
< > 指示要包含的文件名的开始和结束。
iostream是一个头文件,其中包含用于输入/输出操作(cin和cout)的函数。
现在总结一下C++命令的英文翻译,#include <iostream>就是:
亲爱的预处理器,iostream在编译器开始实际编译代码之前,请在程序的最开始包含头文件的所有内容。