Поделиться через


/await (Включение поддержки coroutine)

Используйте параметр компилятора /await , чтобы включить поддержку компилятора для корутин.

Синтаксис

/await
/await:strict

Замечания

Параметр /await компилятора включает поддержку компилятора для корутин C++ и ключевых слов co_await, co_yieldа также co_return. По умолчанию она отключена. Сведения о поддержке корутин в Visual Studio см. в блоге команды Visual Studio. Дополнительные сведения о стандартном предложении coroutines см. в разделе N4628 Рабочий проект, техническая спецификация расширений C++ для корутинов.

Этот /await параметр доступен начиная с Visual Studio 2015.

Начиная с Visual Studio 2019 версии 16.10, вместо /await:strict этого /awaitможно использовать параметр. Этот параметр обеспечивает поддержку соподключаемой C++20 в проектах, которые создаются в режиме C++14 или C++17. В /await:strict режиме поддержка библиотек предоставляется в <корутине> и в std пространстве имен.

Параметр /await:strict отключает расширения языка, присутствующих в том, что не были приняты в /await стандарт C++20. Использование таких функций приводит к ошибке компилятора. Этот параметр также реализует поведение соутина, например предварительный просмотр параметров обещания. Это поведение недоступно /await из-за проблем с совместимостью двоичных файлов в более ранних версиях Visual Studio.

Примечание.

Объекты состояния Coroutine, полученные из coroutine_handle<T>::address() не совместимых между /await и /await:strict режимами. coroutine_handle<T>::from_address() Использование адреса, полученного из дескриптора соутина, созданного кодом, скомпилированный в несовместимом режиме, приводит к неопределенному поведению.

Установка данного параметра компилятора в среде разработки Visual Studio

  1. Откройте диалоговое окно страниц свойств проекта.

  2. Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.

  3. /await Введите параметр или /await:strict компилятор в поле "Дополнительные параметры". Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.

Установка данного параметра компилятора программным способом

См. также

Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC