无效的类型说明符组合

Invalid combination of type specifiers?

本文关键字:组合 说明符 类型 无效      更新时间:2023-10-16

这在xcode中有效,但在visual studio中无效。错误是

错误C2236:意外的'enum' 'abc::def:: ' anonymous-namespace'::'。你是不是忘了一个";"?

我不知道出了什么问题。

namespace abc {
namespace def {
namespace {
long long enum {
  aaa = 1L,
  bbb = 2L,
};
}
}
}

这种语法很奇怪,我不知道它如何在任何地方工作(编辑:显然它是一个GCC扩展-谢谢@PlasmaHH)。这是您想要的可移植c++ 11语法:

enum : long long {
    aaa = 1LL,
    bbb = 2LL
};