include 头文件按顺序的重要性

C++语言 码拜 7年前 (2017-04-24) 1710次浏览
在一个源文件中有时候包含头文件顺序不一样, 会导致程序编译报错,这里面没有循环包含的问题,琢磨了好久,没有弄明白,只是稀里糊涂的解决了问题,有没有高手有这个经验的啊,求指导。
解决方案

20

一般是先包含系统头文件再包含自定义头文件
例如test.h:

class Object
{
private:
	std::string _str;
};

正确的做法是要包含string头文件,可是有些头文件就是遗漏了。
然后main.cpp这样写不会有问题

#include <string>
#include "test.h"

换下顺序就会报错了。
以前本人也遇到过相似的问题,工程文件太多,有时候编译错误了换下头文件顺序就ok了。
要避免相似错误就要养成一个好习惯:系统头文件在前面,然后是第三方库头文件,最后是本人的头文件。


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明include 头文件按顺序的重要性
喜欢 (0)
[1034331897@qq.com]
分享 (0)