C++头文件用<>还是“” 以及 要加.h还是不加 的问题

时间:2021-05-26 11:18:12

1.C++头文件用<>包含还是” “?

答:用<>包含,编译器会先在系统目录下搜索; 
用” ” 包含,编译器会先在用户目录下搜索。 
所以,如果使用系统标准库,要使用<>来包含头文件;使用自定义头文件用” “包含最好。

2.头文件什么时候要加.h什么时候不加?

答:关于这个事情的历史原因等等不赘述,直接怼结论了。

    • 如果使用的是新的C++标准库,不加 .h。例如#include<iostream>
    • 如果是旧的C++库,很抱歉现在已经不支持了(无奈脸)
    • 此外C++可以兼容使用C语言的库,这里有两种情况。 
      ——第一种是仍旧使用原来C语言的库,可以加 .h,如#include<string.h> 
      ——第二种是对C的库改进成C++的库,不加.h,但是在库名字前加c,表示来自与C语言。例如#include<cstring>
    • 如果你用的是自己的头文件,都要加 .h