Меня смущают разные ошибки в Visual Studio 2017 (версия 15.9.11):
'if constexpr' is a C++17 language extension
а также
language feature 'structured bindings' requires compiler flag '/std:c++17'
Я знаю, что добавление флага /std:c++17 решит эти проблемы, но почему два разных сообщения? В чем разница между расширением языка и требованием флага компилятора?
Меня больше интересует эта вещь, потому что я пишу игру на Unreal Engine 4.24. Я могу использовать if constexpr, но не могу использовать структурированные привязки, хотя использую тот же компилятор.
Почему?