控制重复包含的两种方法与区别

为了保证一个头文件不被多次包含,我们使用宏定义来进行避免,有两种方法,介绍如下,并对它们进行区别:

1.#ifndef DFNAME

  #define DFNAME

  ......

  #endif

2.#pragma once

 

两种方法都可以防止头文件被多次包含,但是它们是有区别的。

第一种方法使用宏定义,排除了文件被多次包含可能。缺点:有可能两个不同的头文件,宏名字相同,导致找不到对应头文件。

第二种方法使用编译器默认的定义,可以排除文件包含可能,根据头文件名字进行排除。缺点:不能排除头文件名不同,但是内容完全相同的头文件。

posted @ 2012-05-15 16:09  晒米的猫  阅读(154)  评论(0编辑  收藏  举报