Руководство по переносу и обновлению Microsoft C++

В этой статье приведено руководство по обновлению кода Microsoft C++ до последней версии Visual Studio. Для проектов, созданных в Visual Studio 2010–2017, просто откройте проект в Visual Studio 2019. Вы можете обновить проект Visual Studio 2008 или более ранних версий в двух шагах. Сначала используйте Visual Studio 2010, чтобы преобразовать проект в формат MSBuild. Затем откройте проект в Visual Studio 2019. Полные инструкции см. в статье Об обновлении проектов C++ из более ранних версий Visual Studio.

Наборы инструментов в Visual Studio 2015, Visual Studio 2017 и Visual Studio 2019 совместимы с двоичными файлами. Теперь можно обновить до более последней версии компилятора, не обновляя зависимости библиотеки. Дополнительные сведения см. в статье о совместимости двоичных файлов C++ между версиями Visual Studio.

При обновлении проектов, использующих библиотеки с открытым исходным кодом или предназначенных для запуска на нескольких платформах, мы рекомендуем перенести проект на основе CMake. Дополнительные сведения см. в проектах CMake в Visual Studio

Причины обновления кода C++

Если устаревшее приложение работает удовлетворительно, в безопасной среде и не находится в активной разработке, может оказаться не так много стимулов для его обновления. Однако рассмотрим обновление в таких случаях: приложению требуется постоянное обслуживание. Кроме того, вы выполняете разработку новых функций или делаете улучшения производительности или безопасности. Обновление приносит следующие преимущества:

  • Тот же код может выполняться быстрее, так как мы улучшили оптимизацию компилятора.

  • Современные функции C++ и методики программирования устраняют множество распространенных причин ошибок и создают код, который гораздо проще поддерживать, чем старые идиомы в стиле C.

  • Время сборки ускоряется из-за улучшений производительности компилятора и компоновщика.

  • Лучшее соответствие стандартам. Параметр компилятора /permissive- помогает определить код, который не соответствует текущему стандарту C++. Новый препроцессор также поддерживает соответствие кода.

  • Улучшена безопасность во время выполнения, включая более безопасные функции библиотеки среды выполнения C. Кроме того, функции компилятора, такие как защита проверка и санитизаторы адресов (новые возможности Visual Studio 2019 версии 16.4).

Многонацелие и обновление

Возможно, обновление базы кода до нового набора инструментов не является вариантом. Вы по-прежнему можете использовать последнюю версию Visual Studio для создания и редактирования проектов, использующих старые наборы инструментов и библиотеки. В Visual Studio 2019 вы можете воспользоваться такими функциями, как:

  • современные статические средства анализа, включая основные рекомендации по C++ проверка ers и Clang-Tidy, чтобы помочь выявить потенциальные проблемы в исходном коде.

  • автоматическое форматирование в соответствии с вашим выбором современных стилей может помочь сделать устаревший код гораздо более читаемым.

Дополнительные сведения см. в разделе Использование собственного многоплатформенного нацеливания в Visual Studio для сборки старых проектов.

В этом разделе

Обращение Description
Обновление проектов C++ с более ранних версий Visual Studio Обновление базы кода до последней версии Visual Studio и компилятора.
Средства интегрированной среды разработки для обновления кода C++ Полезные функции интегрированной среды разработки, которые помогают в процессе обновления.
Двоичная совместимость C++ между версиями Visual Studio Использование библиотек версии 140 и более поздних версий из проектов версии 140 и более поздних версий.
Использование собственного многоплатформенного нацеливания в Visual Studio для сборки старых проектов Используйте Visual Studio со старыми компиляторами и библиотеками.
Журнал изменений Visual C++ 2003–2015 Список всех изменений в библиотеках Microsoft C++ и средств сборки из Visual Studio 2003 до 2015, которые могут потребовать изменений в коде.
Новые возможности Visual C++ 2003–2015 Все новые сведения для Microsoft C++ из Visual Studio 2003 до Visual Studio 2015.
Перенос и обновление: примеры и конкретные случаи Для этого раздела мы перенесли и обновили несколько примеров и приложений, а также рассмотрели достигнутые результаты. Эти статьи дают вам представление о том, что участвует в процессе переноса и обновления. На протяжении всего процесса мы даем советы и рекомендации по обновлению, а также поясняем, каким образом были устранены конкретные ошибки.
Перенос на универсальную платформу Windows Содержит сведения о переносе кода приложения в Windows 10 и более поздних версий.
Знакомство с Visual C++ для пользователей UNIX Содержит сведения для пользователей UNIX, которые не знакомы с Visual C++ и хотят научиться работать с этой средой.
Запуск программ Linux в Windows Здесь описываются параметры для переноса приложений из UNIX в Windows.

См. также

C++ в Visual Studio
Новые возможности компилятора C++ в Visual Studio
Улучшения соответствия C++ в Visual Studio