Мне было интересно, знает ли кто-нибудь о сроках или ожидаемом выпуске поддержки C++ 20 в C++/CLI. Согласно этому ответу в сообществе разработчиков Microsoft поддержка находится в разработке, но я не смог найти больше информации.
Фон: Я и моя команда разрабатываем движок моделирования на C++. Мы думали о слое оболочки в C++/CLI, чтобы мы могли использовать C# для пользовательского интерфейса/редактора. Это похоже на архитектуру некоторых игровых движков, где основная функциональность реализована на C++, а редактор написан на C#, а между ними есть какой-то промежуточный слой. Поскольку мы будем в значительной степени полагаться на дальнейшую поддержку C++/CLI, есть ли какие-либо альтернативы для такого рода проектов? Мы ожидали, что на форумах и веб-сайтах Microsoft будет больше информации, но у нас возникли проблемы с поиском того, что действительно соответствует нашим целям.
Заранее спасибо.
Поддержка C++20, а также поддержка многопоточности C++11 будут добавлены в MSVC 2022 17.6.
Из https://github.com/microsoft/STL/wiki/Changelog#expected-in-vs-2022-176-preview-1:
STL теперь поддерживает /clr для многопоточности C++11 (mutex, condition_variable, future и т. д.) и параллельных алгоритмов C++17. Кроме того, STL теперь позволяет использовать параметр /clr в режиме C++20, хотя он еще не поддерживается для производственного использования. #3194 #3201
См. отслеживание проблемы № 3193 для получения списка ошибок компилятора, которые влияют на эти недавно включенные сценарии /clr.
Обратите внимание, как указано в приведенной выше цитате, C++20 с /clr
не готов к производству. Это появится в более позднем выпуске, но пока нет оценок.
Предполагая, что MS придерживается своего трехмесячного цикла выпуска, 17.5 будет выпущена в феврале, что означает, что предварительная версия 17.6 1 будет доступна в то же время, а общий выпуск — в мае.