【发布时间】:2010-12-05 17:53:24
【问题描述】:
当我用 C 语言编写一个在 C++ 上下文中也可能有用的函数时,我应该使用 bool 宏吗?这会导致兼容性问题吗,在 C 和 C++ 中都定义了 bool 类型(嗯,C 适合 _Bool,但你知道我的意思 :-))吗?
【问题讨论】:
当我用 C 语言编写一个在 C++ 上下文中也可能有用的函数时,我应该使用 bool 宏吗?这会导致兼容性问题吗,在 C 和 C++ 中都定义了 bool 类型(嗯,C 适合 _Bool,但你知道我的意思 :-))吗?
【问题讨论】:
为什么不使用int?它总是得到适当的支持。
使用bool 的唯一原因是,如果您确定您的代码只能在现代 C 和 C++ 环境中使用。但如果有任何机会它必须在一些旧的遗留编译器上运行,也许对于一个不起眼的嵌入式处理器,有人必须插入宏并修改代码。
【讨论】:
如果您对节省内存非常感兴趣,可以使用 char 代替。
【讨论】: