c++中的枚举类不能在Mac中编译,而在Windows中工作

enum class in c++ can not compile in Mac, while works in Windows

本文关键字:编译 而在 Windows 工作 Mac 枚举 不能 c++      更新时间:2023-10-16
我的

Mac中的g ++ 4.2编译器似乎存在一些问题。我定义了一个枚举类,如下所示。

enum class Suit {CLUBS,SPADES,HEARTS,DIAMONDS};

它可以在VS2013中编译和运行,但无法在我的Mac中编译(预期标识符或"{")。这是我的g++的问题吗?如何升级?

如果您的编译器支持 C++11 Strongly-typed enumsenum class将编译。
它从GCC 4.4
开始可用http://gcc.gnu.org/projects/cxx0x.html

http://gcc.gnu.org/projects/cxx0x.html 涵盖了 C++11 语言功能以及何时支持它们。GCC 4.4 添加了强类型枚举支持。我以为苹果不久前将 Xcode 切换为 clang ,或者至少将其作为一个选项?

你应该用clang来表示苹果。 我猜 gcc 4.2 不支持它们。如果您想在苹果环境中使用更新的 gcc,请查看这个问题及其答案。

相关文章: