#ifndef和#pragma once
一般防止头文件重复包含问题,基本都是用这两种方式来解决。
#ifndef
:
#ifndef _XXX_H_
#define _XXX_H_
#endif
#pragma once
:
#pragma once
#ifndef
优缺点:
- +兼容性高,所有编译器都支持
- -可能出现不同目录下同名头文件的冲突问题
#pragma once
优缺点:
- +写法简便
- +预处理效率更高
- -不属于标准,有些编译器不支持
总结
更推荐使用#pragma once
,基本新一点的编译器都支持,如果你在PC平台编程基本不用担心编译器不支持的情况。
网友评论