Я могу обновить gcc в Linux, чтобы получить -std = c ++ 17, но не могу сделать то же самое на Mac. Есть ли версия Clang, которую я могу обновить, или какая-нибудь другая альтернатива, чтобы получить C ++ 17 на моем Mac? Пожалуйста помоги. Благодарю.
На моем 10.11 El Capitan, Xcode 7.3.1, clang был обновлен до:
Apple LLVM version 7.3.0 (clang-703.0.31)
что почти эквивалентно версии 3.8 llvm. clang++
не имеет -std=c++17
вариант, но -std=c++1z
, работает хорошо в настоящее время, хотя поддерживает только некоторые функции C ++ 1z.
Для gcc вы можете установить очень новую:
brew install gcc --HEAD
который установит gcc-6.1 сейчас, (2016.8). Этот gcc имеет ограниченную поддержку C ++ 17 и может быть включен -std=c++17
,
некоторое обновление:
Соответствующая версия lvm лязга Apple в последнее время не ясна, должна быть 3.9+ или 4+. Проверьте эта вики-страница для дополнительной информации.
brew install gcc --HEAD
должен всегда работать на mac / homebrew и давать вам передовой gnu gcc со многими экспериментальными функциями. С другой стороны, нормально brew install gcc
должен установить gcc, поддерживающий большинство функций c ++ 17.
Для стандартного аргумента языка попробуйте -std=c++17
а также -std=c++1z
для разных компиляторов один из них должен работать.