【发布时间】:2012-11-07 15:11:19
【问题描述】:
如果我这样写:
typedef enum {
foo_1,
foo_2
}foo ;
我发现我可以使用
int footype = foo::foo_1 在 C++ 中
我可以直接使用
int footype = foo_1 在 c 中,
那么有没有一种方法可以编写在 c++ 和 c 中都可以使用的相同代码?代码在一个头文件中,只有一个结构。
【问题讨论】:
-
只使用
foo_1没有命名空间,它应该在两者中都可以工作,尽管你必须为c++声明using namespace foo -
@h3nr1x foo 不是命名空间,无需在 C++ 中声明。
-
@icepack 是的,你说得对,我看错了问题,并在
typedef之后省略了foo,对不起