代码改变世界

头文件保护符

2013-08-02 10:47  清心朗静  阅读(791)  评论(0编辑  收藏  举报

避免多重包含。。

参考:

http://hi.baidu.com/jiaxiaobosuper/item/5cb353e0ce1c2ef22b09a449

http://baike.baidu.com/view/1276747.htm

 

设计头文件时,应使其可以多次包含在同一源文件中.我们必须保证多次包含同一头文件不会引起该头文件定义的类和对象被多次定义.

使得头文件安全的通用做法,是使用预处理器定义头文件保护符(header guard )。头文件保护符用于避免在已经见到头文件的情况下重新处理该头文件的内容。

 #ifndef HEAD1

#define HEAD1

#include "head1.h"

#endif

 

另外,微软提供了一个指令使你可以更方便的保护,保证头文件只被编译一次。

#pragma once//优点:方便,缺点:无可移植性

#pragma once是编译器相关的,就是说即使这个编译系统上有效,但在其他编译系统也不一定可以。