Microsoft C++ 이식 및 업그레이드 가이드

이 문서에서는 Microsoft C++ 코드를 최신 버전의 Visual Studio로 업그레이드하기 위한 가이드를 제공합니다. Visual Studio 2010에서 2017까지 만든 프로젝트의 경우 Visual Studio 2019에서 프로젝트를 엽니다. Visual Studio 2008 이전 프로젝트를 두 단계로 업그레이드할 수 있습니다. Visual Studio 2010을 사용하여 프로젝트를 MSBuild 형식으로 먼저 변환합니다. 그런 다음 Visual Studio 2019에서 프로젝트를 엽니다. 전체 지침은 이전 버전의 Visual Studio에서 C++ 프로젝트 업그레이드를 참조 하세요.

Visual Studio 2015, Visual Studio 2017 및 Visual Studio 2019의 도구 집합은 이진 호환됩니다. 이제 라이브러리 종속성을 업그레이드하지 않고도 최신 버전의 컴파일러로 업그레이드할 수 있습니다. 자세한 내용은 Visual Studio 버전 간의 C++ 이진 호환성을 참조하세요.

오픈 소스 라이브러리를 사용하거나 여러 플랫폼에서 실행하려는 프로젝트를 업그레이드하는 경우 CMake 기반 프로젝트로 마이그레이션하는 것이 좋습니다. 자세한 내용은 Visual Studio의 CMake 프로젝트를 참조 하세요.

C++ 코드를 업그레이드하는 이유

레거시 애플리케이션이 안전한 환경에서 만족스럽게 실행되고 있고 활성 개발 중이 아닌 경우 업그레이드할 인센티브가 많지 않을 수 있습니다. 그러나 이러한 경우 업그레이드를 고려합니다. 애플리케이션에 지속적인 기본 테넌스가 필요합니다. 또는 새로운 기능 개발을 수행하거나 성능 또는 보안을 개선합니다. 업그레이드는 다음과 같은 이점을 제공합니다.

  • 컴파일러 최적화를 개선했으므로 동일한 코드가 더 빠르게 실행될 수 있습니다.

  • 최신 C++ 기능 및 프로그래밍 방법은 버그의 일반적인 원인을 제거하고 이전 C 스타일 관용구보다 훨씬 쉽게 기본 얻을 수 있는 코드를 생성합니다.

  • 컴파일러 및 링커의 성능 향상으로 인해 빌드 시간이 더 빠릅니다.

  • 더 나은 표준 규칙. /permissive- 컴파일러 옵션을 사용하면 현재 C++ 표준을 준수하지 않는 코드를 식별할 수 있습니다. 새 전처리기는 코드 규칙도 지원합니다.

  • 더 안전한 C 런타임 라이브러리 기능을 포함하여 런타임 보안을 향상합니다. 또한 가드 검사 및 주소 삭제기와 같은 컴파일러 기능(Visual Studio 2019 버전 16.4의 새로운 기능).

다중 대상 지정 및 업그레이드

코드 베이스를 새 도구 집합으로 업그레이드하는 것은 선택 사항이 아닐 수 있습니다. 최신 Visual Studio를 사용하여 이전 도구 집합 및 라이브러리를 사용하는 프로젝트를 빌드하고 편집할 수 있습니다. Visual Studio 2019에서는 다음과 같은 기능을 활용할 수 있습니다.

  • C++ 핵심 지침 검사ers 및 Clang-Tidy를 포함한 최신 정적 분석 도구는 소스 코드에서 잠재적인 문제를 식별하는 데 도움이 됩니다.

  • 선택한 최신 스타일에 따라 자동 서식을 지정하면 레거시 코드를 훨씬 더 쉽게 읽을 수 있습니다.

자세한 내용은 Visual Studio의 네이티브 멀티 타기팅을 사용하여 이전 프로젝트 빌드를 참조하세요.

이 섹션의 내용

제목 설명
이전 버전의 Visual Studio에서 C++ 프로젝트 업그레이드 코드 베이스를 최신 버전의 Visual Studio 및 컴파일러로 업그레이드하는 방법입니다.
C++ 코드를 업그레이드하기 위한 IDE 도구 업그레이드 프로세스에 도움이 되는 유용한 IDE 기능입니다.
Visual Studio 버전 간의 C++ 이진 호환성 v140 이상 프로젝트에서 v140 이상 라이브러리를 있는 그대로 사용합니다.
Visual Studio의 네이티브 멀티 타기팅을 사용하여 이전 프로젝트 빌드 이전 컴파일러 및 라이브러리와 함께 Visual Studio를 사용합니다.
Visual C++ 변경 기록 2003 - 2015 코드 변경이 필요할 수 있는 Visual Studio 2003부터 2015까지의 Microsoft C++ 라이브러리 및 빌드 도구의 모든 변경 내용 목록입니다.
Visual C++ 2003~2015의 새로운 기능 Visual Studio 2003부터 Visual Studio 2015까지 Microsoft C++에 대한 모든 "새로운 기능" 정보입니다.
포팅 및 업그레이드: 예제 및 사례 연구 이 섹션에서는 여러 가지 샘플 및 애플리케이션을 포팅 및 업그레이드하고 경험과 결과를 설명했습니다. 이 문서에서는 이식 및 업그레이드 프로세스와 관련된 내용을 파악할 수 있습니다. 프로세스 전반에 걸쳐 업그레이드를 위한 팁과 트릭을 설명하고 특정 오류를 수정한 방법을 보여 줍니다.
유니버설 Windows 플랫폼으로 포팅 앱 코드를 Windows 10 이상으로 포팅하는 방법에 대한 정보를 포함합니다.
UNIX 사용자를 위한 Visual C++ 소개 Visual C++를 처음 사용하며 생산성을 높이려는 UNIX 사용자에게 정보를 제공합니다.
Windows에서 Linux 프로그램 실행 UNIX 애플리케이션을 Windows로 마이그레이션하는 옵션을 설명합니다.

참고 항목

Visual Studio의 C++
Visual Studio에서 C++ 컴파일러의 새로운 기능
Visual Studio의 C++ 규칙 향상