кажется, есть некоторые проблемы с моим компилятором g ++ 4.2 на моем Mac. Я определил перечислимый класс следующим образом.
enum class Suit {CLUBS,SPADES,HEARTS,DIAMONDS};
Он может компилироваться и запускаться в VS2013, но не смог скомпилироваться на моем Mac (ожидаемый идентификатор или ‘{‘). Это проблема моего g ++? Как его обновить?
enum class
скомпилируется, если ваш компилятор поддерживает C++11
Strongly-typed enums
,
Доступно начиная с GCC 4.4
http://gcc.gnu.org/projects/cxx0x.html
http://gcc.gnu.org/projects/cxx0x.html охватывает особенности языка C ++ 11 и когда они были поддержаны. В GCC 4.4 добавлена поддержка строго типизированных перечислений. Я думал, что Apple переключил XCode, чтобы звенеть некоторое время назад, или, по крайней мере, включить его в качестве опции?
Вы должны использовать лязг для яблока. GCC 4.2 не поддерживает их, я думаю. Если вы хотите использовать более позднюю версию gcc в среде Apple, взгляните на этот вопрос с ответом.