iostream头文件包含全局流对象(如cin和cout )的定义。 平时我们自己写demo的时候,为了方便,往往会包含这个头文件,但是在正式的项目中一般不会包含这个头文件,使用的时候直接使用命名空间来引用相应的对象。 例如,STD :3360 CIN/STD : cout/STD 33603360 cerr等。
《C++标准库》显示了其理由。
除非用到标准stream对象,否则不需要包含iostream头文件。因为在某些实现版本中,每一个包含iostream的编译单元在启动(start-up)时都需要执行一段代码,虽然说负荷不高,但却必须载入相应的执行分页,这项耗费可能不小。一般来说,必须包含的头文件,我们才去包含
因此,除了我们使用的库以外,不要包含头文件。
感谢您的阅读。