【C++】防止C语言头文件被重复包含

本文是在C语言环境!不是C++环境!

我们必须找到一种行之有效的方案,使得头文件可以被包含多次,但效果与只包含一次相同。

在实际开发中,我们往往使用宏保护来解决这个问题。例如,在 xyz.h 中可以添加如下的宏定义:

#ifndef _XYZ_H
#define _XYZ_H
/* 头文件内容 */
#endif
标准头文件也是这样做的,例如在 Visual Studio 2010 中,stdio.h 就有如下的宏定义:

#ifndef _INC_STDIO
#define _INC_STDIO
/* 头文件内容 */
#endif

这种宏保护方案使得程序员可以“任性”地引入当前模块需要的所有头文件,不用操心这些头文件中是否包含了其他的头文件。

你可能感兴趣的:(C语言与科学计算)