自己编写了一个头文件 ,在主函数中通过#include引用时出现了 无法打开源文件的问题,通过网上查阅,大多数人的做法是:右键项目->属性->VC++目录->包含目录->下拉剪头->编辑,在对话框中加入 $(ProjectDir)。
问题完美解决!
但是原理是啥?通过进一步研究,发现问题是自己混淆了 #include"xx.h" 和 #include<xx.h> 的用法,
#include<xx.h> 表示直接从编译器自带的函数库中寻找文件,编译器从标准库路径开始搜索.xxh
include"xx.h" 表示先从自定义的文件中找 ,如果找不到在从函数库中寻找文件,编译器从用户的工作路径开始搜索 xx.h
如果我们通过<>的方式引用自己编写的头文件,必然会出现无法找到与源文件的问题,因为我们的文件放在了用户目录下,上面的解决办法本质上是通过将会用户目录追加到编译器搜索范围内,其实通过将<>换成" "就可以解决问题了。