通过#include<>和#include""都可以将指定文件中的内容引入到当前文件,但在搜索被引入文件时两者采用了不同的搜索策略。
#include<>在搜索时直接从编译器指定的路径处进行搜索。例如,编译器指定的include目录是C:\Program Files\Microsoft Visual Studio 10.0\vc\include,那么编译器就会从该路径开始搜索。如果找不到被引入文件,程序直接报错,因此系统提供的头文件推荐使用#include<>这种方式引入。
#include""首先从运行程序所在目录处进行搜索,如果搜索失败再从编译器指定路径处进行搜索,如果仍然搜索失败,则程序报错,因此用户自定义的头文件必须使用#include""这种方式引入。而系统提供的头文件虽然也可以通过#include""引入,但会首先在用户目录中进行无谓的搜索尝试。