【发布时间】:2012-10-01 12:45:20
【问题描述】:
我有 bool typedef 的代码
typedef enum bool {
false,
true,
} bool;
在两个头文件中,如果最终父头文件中没有包含它,则子 C 文件当然不能使用 bool 类型,尽管也定义了它的较小头文件的子文件可以。
但是,如果我在最终的父头文件中定义它,那么较小的头文件定义错误“布尔已在当前范围内声明”
我需要一个针对较小标头的解决方案,它可能包含在可能已经或可能尚未定义 bool 的项目中......最好的方法是什么??
塔
【问题讨论】:
-
请注意,在 C99 (
#include <stdbool.h>) 中添加了布尔类型。 -
不幸的是,我在这种环境中没有可用的 stdbool.h ... :(
标签: c enums embedded typedef multiple-definition-error