컴파일러 옵션 범주별 목록
다음은 범주별로 나열한 포괄적인 컴파일러 옵션 목록입니다. 사전순으로 나열된 목록을 보려면 컴파일러 옵션 사전순 목록을 참조하십시오.
최적화
옵션 |
용도 |
---|---|
작은 코드를 만듭니다. |
|
빠른 코드를 만듭니다. |
|
인라인 확장을 제어합니다. |
|
최적화를 사용하지 않습니다. |
|
전역 최적화를 사용합니다. |
|
내장 함수를 생성합니다. |
|
코드 크기를 우선으로 합니다. |
|
코드 속도를 우선으로 합니다. |
|
최대 최적화(/Ob1gity /Gs)를 사용합니다. |
|
프레임 포인터를 생략합니다. x86 전용입니다. |
코드 생성
옵션 |
용도 |
---|---|
코드 생성 시 SSE 또는 SSE2 명령을 사용합니다. x86 전용입니다. |
|
.obj 파일에서 주소 지정 가능한 섹션의 수를 늘립니다. |
|
공용 언어 런타임에 실행할 출력 파일을 생성합니다. |
|
예외 처리 모델을 지정합니다. |
|
AMD64와 EM64T 모두에서 특정 마이크로 아키텍처에 맞게 최적화되거나 특정 x64 아키텍처에 맞게 최적화된 코드를 생성합니다. |
|
부동 소수점 동작을 지정합니다. |
|
Itanium 프로세서에 대해 최적화합니다. IPF 크로스 컴파일러나 IPF 네이티브 컴파일러에서만 사용할 수 있습니다. |
|
Itanium2 프로세서에 대해 최적화합니다. IPF 크로스 컴파일러나 IPF 네이티브 컴파일러에서만 사용할 수 있습니다. |
|
__cdecl 호출 규칙을 사용합니다. x86 전용입니다. |
|
스택 프로브를 활성화합니다. |
|
문자열 풀링을 사용합니다. |
|
후크 함수 _penter를 호출합니다. |
|
후크 함수 _pexit를 호출합니다. |
|
전체 프로그램 최적화를 사용합니다. |
|
최소 재빌드를 사용합니다. |
|
RTTI(런타임 형식 정보)를 사용합니다. |
|
__fastcall 호출 규칙을 사용합니다. x86 전용입니다. |
|
스택 프로브를 제어합니다. |
|
정적 스레드 로컬 저장소를 사용하여 할당한 데이터의 파이버 안전을 지원합니다. |
|
동기 예외 처리를 사용합니다. |
|
함수 수준 링크를 사용합니다. |
|
__stdcall 호출 규칙을 사용합니다. x86 전용입니다. |
|
MSVCRT.lib를 사용하여 다중 스레드 DLL을 만듭니다. |
|
MSVCRTD.lib를 사용하여 디버그 다중 스레드 DLL을 만듭니다. |
|
LIBCMT.lib를 사용하여 다중 스레드 실행 파일을 만듭니다. |
|
LIBCMTD.lib를 사용하여 디버그 다중 스레드 실행 파일을 만듭니다. |
|
빠른 초월수를 생성합니다. |
|
try 블록 내에 있는 fwait 명령을 제거합니다. |
출력 파일
옵션 |
용도 |
---|---|
목록 파일을 만들고 목록 파일 이름을 설정합니다. |
|
목록 파일을 만들고 목록 파일 이름을 설정합니다. |
|
프로그램 데이터베이스 파일 이름을 바꿉니다. |
|
실행 파일 이름을 바꿉니다. |
|
전처리된 출력 파일 이름을 지정합니다. |
|
맵 파일을 만듭니다. |
|
개체 파일을 만듭니다. |
|
미리 컴파일된 헤더 파일 이름을 지정합니다. |
|
브라우저 파일을 생성합니다. |
|
삽입된 코드와 소스 파일을 병합합니다. |
디버깅
옵션 |
용도 |
---|---|
보안 검사를 버퍼링합니다. |
|
/RTC1과 동일합니다. |
|
레지스터에 전달된 매개 변수를 함수 시작 시 스택의 해당 위치에 기록합니다. 이 컴파일러 옵션은 x64 컴파일러(네이티브 및 크로스 컴파일)에만 사용됩니다. |
|
런타임 오류 검사를 사용합니다. |
|
64비트 이식성 문제를 검색합니다. |
|
모든 개체 파일에 완전한 디버깅 정보를 저장합니다. |
|
디버그 라이브러리를 만들 때 PCH 참조를 삽입합니다. |
|
C 7.0 호환 디버깅 정보를 생성합니다. |
|
완전한 디버깅 정보를 생성합니다. |
|
편집하며 계속하기와 호환되는 프로그램 데이터베이스에 디버깅 정보를 포함합니다. x86 전용입니다. |
|
디버깅할 수 있는 최적화된 코드를 생성합니다. IPF 크로스 컴파일러나 IPF 네이티브 컴파일러에서만 사용할 수 있습니다. |
전처리기
옵션 |
용도 |
---|---|
#using 지시문에 전달된 파일 참조를 확인하기 위해 검색할 디렉터리를 지정합니다. |
|
전처리하는 동안 주석을 유지합니다. |
|
상수와 매크로를 정의합니다. |
|
전처리기 출력을 표준 출력에 복사합니다. |
|
전처리기 출력을 표준 출력에 복사합니다. |
|
지정된 포함 파일을 전처리합니다. |
|
파일 이름이 #using 지시문에 전달된 것처럼 사용되도록 합니다. |
|
포함 파일의 디렉터리를 검색합니다. |
|
전처리기 출력을 파일에 씁니다. |
|
미리 정의된 매크로를 제거합니다. |
|
미리 정의된 모든 매크로를 제거합니다. |
|
표준 포함 디렉터리를 무시합니다. |
언어
옵션 |
용도 |
---|---|
소스 코드에서 #pragma omp를 활성화합니다. |
|
숨겨진 vtordisp 클래스 멤버를 사용하거나 사용하지 않습니다. |
|
멤버의 포인터에 best case를 사용합니다. |
|
멤버의 포인터에 full generality를 사용합니다. |
|
다중 상속을 선언합니다. |
|
단일 상속을 선언합니다. |
|
가상 상속을 선언합니다. |
|
언어 확장을 사용하지 않습니다. |
|
/Ze에서 표준 동작을 지정합니다. |
|
언어 확장을 사용합니다. |
|
함수 프로토타입을 생성합니다. |
|
.obj 파일에서 기본 라이브러리 이름을 제거합니다. |
|
/Zpn |
구조체 멤버를 넣습니다. |
구문만 확인합니다. |
링크
옵션 |
용도 |
---|---|
스택 크기를 설정합니다. |
|
DLL(동적 연결 라이브러리)을 만듭니다. |
|
디버그 DLL(동적 연결 라이브러리)을 만듭니다. |
|
MSIL 모듈을 만듭니다. |
|
지정된 옵션을 LINK에 전달합니다. |
|
MSVCRT.lib을 사용하여 컴파일함으로써 다중 스레드 DLL을 만듭니다. |
|
MSVCRTD.lib로 컴파일하여 디버그 다중 스레드 DLL을 만듭니다. |
|
LIBCMT.lib를 사용하여 컴파일함으로써 다중 스레드 실행 파일을 만듭니다. |
|
LIBCMTD.lib를 사용하여 컴파일함으로써 디버그 다중 스레드 실행 파일을 만듭니다. |
미리 컴파일된 헤더
옵션 |
용도 |
---|---|
현재 빌드에서 미리 컴파일된 다른 모든 헤더 컴파일러 옵션을 무시합니다. |
|
미리 컴파일된 헤더 파일을 만듭니다. |
|
모든 개체 파일에 완전한 디버깅 정보를 저장합니다. |
|
빌드하는 동안 미리 컴파일된 헤더 파일을 사용합니다. |
기타
옵션 |
용도 |
---|---|
컴파일러 옵션을 나열합니다. |
|
지시 파일을 지정합니다. |
|
코드 분석을 활성화합니다. |
|
링크하지 않고 컴파일합니다. |
|
XML 파일에 대해 문서 주석을 처리합니다. |
|
ICE(내부 컴파일러 오류) 정보를 Visual C++ 팀에 직접 제공할 수 있도록 합니다. |
|
진단 텍스트에서 cl.exe에 전달된 소스 코드 파일의 전체 경로를 표시합니다. |
|
외부 공개 이름의 길이를 제한합니다. |
|
컴파일러 옵션을 나열합니다. |
|
핫 패치할 수 있는 이미지를 만듭니다. |
|
기본 char 형식을 변경합니다. |
|
여러 개의 소스 파일을 동시에 빌드합니다. |
|
초기 화면 배너를 표시하지 않습니다. |
|
부동 소수점 형식에서 정수 계열 형식으로 변환해야 할 때 도우미 함수 _ftol이 호출되지 않도록 합니다. x86 전용입니다. |
|
B CPU 스태핑 오류에 따라 예기치 않은 결과를 가져오는 명령의 시퀀스를 생성하지 않습니다. IPF 전용입니다. |
|
C CPU 스태핑 오류에 따라 예기치 않은 결과를 가져오는 명령의 시퀀스를 생성하지 않습니다. IPF 전용입니다. |
|
상위 96개의 부동 소수점 레지스터를 사용하지 않습니다. IPF 전용입니다. |
|
위치 종속 코드를 사용하여 이미지를 생성합니다. IPF 전용입니다. |
|
런타임에 함수를 만들지 않는 프로그램의 성능을 향상시킵니다. IPF 전용입니다. |
|
컴파일하는 동안 전체 포함 파일의 목록을 표시합니다. |
|
C 소스 파일을 지정합니다. |
|
C++ 소스 파일을 지정합니다. |
|
버전 문자열을 설정합니다. |
|
기본적으로 비활성화되는 경고를 포함하여 모든 경고를 활성화합니다. |
|
경고 수준을 설정합니다. |
|
모든 경고를 사용하지 않습니다. |
|
명령줄에서 C++ 소스 코드를 컴파일할 때 오류 및 경고 메시지에 한 줄 진단을 사용합니다. |
|
미리 컴파일된 헤더 메모리의 할당 제한을 지정합니다. |