c++中#include< >与#include" "
< >或" “里包含的是头文件名,我之前听别人说< >与“ ”没啥大的区别,但是很奇怪为什么人们用的时候系统上带的头文件经常用< > ,自己写的头文件则经常用” " ,原因如下
用< >包含头文件,编译器会现在系统目录下搜索
用" "包含头文件,编译器会先在用户目录下搜索
头文件加不加.h问题
新的C++标准库,是不用加.h的。例如#include<iostream>,而旧的C++库,现在已经不支持了
此外因为C++可以兼容使用C语言的库,所以这里有两种情况:
1. 仍旧使用原来C语言的库,可以加.h,如#include<math.h>
2. 对C的库改进成C++的库,不加.h,但是在库名字前加c,表示来自C语言。例如#include<cmath>
这两种我们都可以用,但是用不带.h的头文件,需要使用命名空间std
如果你用的是自己的头文件,都要加.h
最后,如果你用< >包含的头文件编译时出现#include<xxx.h>,no such file
,可以试试另一种包含方式