UNIX 사용자를 위한 Microsoft C++ 소개
이 항목에서는 Visual Studio를 처음으로 사용하며 명령줄에서 또는 Visual Studio를 사용하여 C++로 생산성을 높이려는 UNIX의 모든 버전에 대한 정보를 제공합니다. Microsoft C++ 컴파일러와 함께 Visual Studio를 사용하여 Windows를 대상으로 지정할 수 있습니다. 원격 Linux 머신, MinGW-w64 및 Linux용 Windows 하위 시스템 같은 UNIX 환경에서 GCC 또는 Clang와 함께 Visual Studio IDE를 사용할 수도 있습니다. Visual Studio에서 C++를 사용하려면 C++ 워크로드를 사용한 데스크톱 개발을 설치해야 합니다. Visual Studio 설치 관리자 열어 워크로드를 설치하거나 선택적 구성 요소를 추가하거나 제거합니다. 또한 원격 Linux 머신을 대상으로 하는 경우 C++ 워크로드를 사용하여 Linux 개발을 설치합니다. Android 또는 iOS 개발의 경우 C++ 워크로드를 사용하여 모바일 개발을 설치합니다.
명령줄 시작
UNIX 명령줄 환경을 사용하는 것과 비슷한 방식으로 명령줄에서 Microsoft C++ 컴파일러를 사용할 수 있습니다. 명령줄 C 및 C++ 컴파일러(CL.EXE), 링커(LINK.EXE) 및 UNIX에서 만든 유틸리티의 Microsoft 버전인 NMAKE.EXE를 비롯한 기타 도구를 사용하여 명령 프롬프트에서 컴파일합니다.
UNIX에서는 /usr/bin 등의 공용 폴더에 명령이 설치됩니다. Visual Studio에서 명령줄 도구는 Visual Studio 설치 디렉터리의 VC\bin 하위 디렉터리 및 그 하위 디렉터리에 설치됩니다. UNIX와 달리 이러한 도구는 일반 명령 프롬프트 창에서 사용할 수 없습니다. 명령줄 도구를 사용하려면 C++ 프로그램을 컴파일하는 데 필요한 경로 및 기타 환경 변수를 설정하는 특별한 개발자 명령 프롬프트를 사용해야 합니다. 자세한 내용은 명령줄에서 C/C++ 코드 빌드 및 연습: 명령줄에서 네이티브 C++ 프로그램 컴파일을 참조하세요.
코드 디버그
명령줄 또는 IDE 내에서 Microsoft C++ 프로젝트에 대한 Visual Studio 디버거를 사용할 수 있습니다. /Z7, /Zi, /ZI(디버그 정보 형식) 스위치를 사용하여 컴파일하여 원본을 단계별로 실행합니다. 자세한 내용은 네이티브 코드 디버그 및 C++ 데스크톱 개발에 Visual Studio IDE 사용을 참조하세요.
GCC 또는 Clang로 컴파일된 프로그램의 경우 Visual Studio는 GDB, LLDB 또는 지정한 사용자 지정 디버거를 호출합니다.
Visual Studio 프로젝트 시스템
Visual Studio 프로젝트 시스템을 MSBuild라고 합니다. XML 형식의 프로젝트 파일을 사용합니다. C++ 프로젝트 파일에는 확장명이 .vcxproj입니다. 잠재적으로 각각 다른 컴파일러 옵션 집합이나 다른 언어로 빌드된 여러 라이브러리와 실행 파일로 구성된 애플리케이션은 단일 솔루션에 속하는 여러 프로젝트에 저장됩니다. 솔루션은 여러 프로젝트를 함께 그룹화하는 컨테이너에 대한 추상화입니다. 솔루션 정보는 확장명이 .sln 솔루션 파일에 저장됩니다. 자세한 내용은 Visual Studio의 솔루션 및 프로젝트 및 C++ 데스크톱 개발에 Visual Studio IDE 사용을 참조하세요. 기본 메뉴에서 새>파일>프로젝트를 선택하여 사용 가능한 Visual Studio 프로젝트 템플릿을 확인합니다.
Visual Studio 2017부터 CMake 프로젝트에 대한 지원과 임의 빌드 시스템에서 Microsoft C++ 컴파일러를 사용하거나 느슨한 원본 파일 폴더와 프로젝트 파일이 없는 옵션을 추가합니다. 자세한 내용은 Visual Studio의 CMake 프로젝트 및 Visual Studio의 폴더 열기 프로젝트를 참조하세요.
Microsoft 전용 한정자
Microsoft 컴파일러는 표준 C 및 C++ 프로그래밍 언어에 대한 여러 확장을 구현하여 Windows 운영 체제에 대한 프로그래밍을 지원합니다. 이러한 확장은 특히 스토리지 클래스 특성, 함수 호출 규칙 및 기본 주소를 지정하는 데 사용됩니다. 지원되는 모든 C 및 C++ 확장의 전체 목록은 Microsoft 관련 한정자를 참조 하세요.
컴파일러 옵션을 사용하여 /Za
C89에 대한 대부분의 Microsoft 관련 확장을 사용하지 않도록 설정할 수 있습니다. 이 옵션은 C89를 준수해야 하는 여러 플랫폼에서 실행할 코드를 작성하려는 경우에만 권장됩니다. 컴파일러 옵션에 대한 /Za
자세한 내용은 다음 /Ze
을 참조/Za
하세요(언어 확장 사용 안 함). C 및 C++ 컴파일러 규칙에 대한 자세한 내용은 Microsoft C/C++ 언어 규칙 및 비표준 동작을 참조하세요.
미리 컴파일된 헤더
Microsoft C 및 C++ 컴파일러는 인라인 코드를 포함하여 모든 C 또는 C++ 코드를 미리 컴파일하는 옵션을 제공합니다. 이 성능 기능을 사용하여 안정적인 코드 본문을 컴파일하고, 코드의 컴파일된 상태를 파일에 저장하고, 후속 컴파일 중 미리 컴파일된 코드와 아직 개발 중인 코드를 결합할 수 있습니다. 안정적인 코드는 다시 컴파일할 필요가 없기 때문에 각 후속 컴파일 속도가 향상됩니다.
기본적으로 미리 컴파일된 코드는 pch.h 및 pch.cpp(Visual Studio 2017 및 이전 버전에서 stdafx.h 및 stdafx.cpp) 파일에서 모두 지정됩니다. 미리 컴파일된 헤더에 대한 자세한 내용은 미리 컴파일된 헤더 파일 만들기를 참조하세요.
관련 단원
자세한 내용은 Windows에서 Linux 프로그램 실행을 참조 하세요.