C++中#include<XXX.h>和#include“XXX.h“的区别

C++中#include<XXX.h>和#include"XXX.h"的区别

在移植c++代码时候 发现 :
#include
#include
#include
#include “Object.h”

正在将同事用vs写的代码移植到qt上。object相关的类总是报错,头文件Object.h找不着,开始以为是系统的,发现#include<XXX.h>和#include"XXX.h"的区别后,才知道是有个自定义的Object.h没有引入,然后找到这个文件,顺利解决问题。

以下是一位大佬的解释:

#include<>直接从编译器自带的函数库中寻找文件
#include""是先从自定义的文件中找 ,如果找不到在从函数库中寻找文件

采用"< >"方式进行包含的头文件表示让编译器在编译器的预设标准路径下去搜索相应的头文件,如果找不到则报错。

特别要注意的是,如果是标准库头文件,那么既可以采用<>的方式,又可以采用" “的方式,而用户自定义的头文件只能采用” "的方式。

例如,如下这种方式是正确的:

#include 效率较高(编译器自带的函数库中寻找文件)

#include "iostream"效率较低(从自定义的文件中找 ,如果找不到在从函数库中寻找文件)

如下这种方式是不正确的:

#include <hanli.h>

hanli.h是我们自己创建的头文件

转载自:感谢这个大佬的解答

猜你喜欢

转载自blog.csdn.net/qq_43207709/article/details/112468563
今日推荐