C 与 C++ 枚举链接与外部"C"



我有一个标头,只声明了一个无作用域的枚举:

傅炯:

#ifndef FOO_BAR_ENUM_H
#define FOO_BAR_ENUM_H
typedef enum Foo {
Bar,
BigBar,
LittleBar,
MassiveBar
BarCount
} Foo;
#endif

我从 C 和 C++ 都使用了这个标头。它应该由外部"C"块保护吗?包括来自两个编译很好,但是这种用法是否存在链接差异,就编译器而言是有效的,但对于天真的用户来说可能不是预期的?

此标头不会生成任何用于链接的符号,因此没有必要使用extern "C"块来保护它。

最新更新