在我们编写一个c++的源程序之前,一般都会有这两行
#include<iostream>
using namespace std;
这就是头文件和命名空间。
1、头文件
在这里,我们介绍一种预处理器,处理名称以#开头的编译命令,不需要使用额外的命令去调用这个预处理器,它就会在编译程序中自动运行。
#include<iostream>
它的作用就是在代码被编译之前,通过预处理器将iostream中的文件,添加到程序中。当然这样做是为了与外界进行通信,像我们需要使用的IO操作都需要使用这个文件。还有一些特殊的字符endl(换行)都包含在这个文件中。
2、命名空间
using namespace std;
像一些输入输出命令都在这个命名空间中,如 cin ,cout,
这里的命名空间可以理解为是一个辖域,就像如果a,b两个人他们合作完成一项任务,但是事后他们发现,他们自己的函数中都有定义了fun(),所以在后面的调研中可能会产生歧义,即在他们的调用中无法确定是调用a的fun函数,还是b的fun函数。命名空间就给了这样的一个解决方法,通过给我们各自的函数加上他们各自的命名空间,使它们可以区分。
a::fun();//调用a的函数
b::fun();//调用b的函数