기본적으로 해제 되어 있는 컴파일러 경고
기본적으로 컴파일러에는 꺼져 있는 컴파일러 경고가 포함되어 있습니다.기본적으로 경고가 꺼져 있을 경우 대부분의 사용자는 경고를 보려고 하지 않습니다.하지만 다음 옵션 중 하나를 사용하여 이러한 경고를 사용하도록 설정할 수 있습니다.
#pragma warning(default : warning_number)
지정된 경고(warning_number)는 기본 수준에서 사용할 수 있습니다.경고에 대한 설명서에는 기본 수준의 경고가 들어 있습니다.#pragma warning(warning_level : warning_number)
지정된 경고(warning_number)는 지정된 수준(warning_level)에서 사용할 수 있습니다./Wall
/Wall은 기본적으로 해제되어 있는 모든 경고가 사용되도록 합니다.
기본적으로 다음 경고는 해제되어 있습니다.
C4061(수준 4) |
열거형 'enumeration'의 switch에 있는 'identifier' 열거자는 case 레이블에 의해 명시적으로 처리되지 않습니다. |
C4062(수준 3) |
열거형 'enumeration'의 switch에 있는 'identifier' 열거자가 처리되지 않습니다. |
C4191(수준 3) |
'운영자/운영': '표현식 유형'에서 '필수 유형'으로 안전 하지 않은 변환 |
C4242(수준 4) |
'identifier': 'type1'에서 'type2'(으)로 변환하면서 데이터가 손실될 수 있습니다. |
C4254(수준 4) |
'identifier': 'type1'에서 'type2'(으)로 변환하면서 데이터가 손실될 수 있습니다. |
C4255(수준 4) |
'function': 함수 프로토타입을 입력하지 않았습니다. '()'에서 '(void)'로 변환됩니다. |
C4263(수준 4) |
'function': 멤버 함수가 기본 클래스 가상 멤버 함수를 재정의하지 않습니다. |
C4264(수준 1) |
'virtual_function': 기본 'class'의 가상 멤버 함수에 대해 재정의를 사용할 수 없습니다. 함수가 숨겨집니다. |
C4265(수준 3) |
'class': 클래스에 가상 함수가 있지만 소멸자는 가상이 아닙니다. |
C4266(수준 4) |
'function': 기본 'type'의 가상 멤버 함수에 대해 재정의를 사용할 수 없습니다. 함수가 숨겨집니다. |
C4287(수준 3) |
'operator': 부호 없는 상수 또는 음의 상수가 일치하지 않습니다. |
C4289(수준 4) |
비표준 확장이 사용됨 : 'var' : for 루프에서 선언된 루프 제어 변수가 for 루프 범위 외부에서 사용되었습니다. |
C4296(수준 4) |
'operator': 식이 항상 false입니다. |
C4302(수준 2) |
'conversion': 'type1'에서 'type2'(으)로 잘립니다. |
C4350(수준 1) |
동작 변경: 'member1'이(가) 'member2' 대신 호출됩니다. |
'this' : 기본 멤버 이니셜라이저 목록에서 사용되었습니다. |
|
C4365(수준 4) |
'action': 'type_1'에서 'type_2'(으)로의 변환입니다. signed 또는 unsigned가 일치하지 않습니다. |
C4412(수준 2) |
'function': 함수 시그니처에 'type' 형식이 있습니다. 순수형 코드와 혼합형/네이티브 코드 간에 C++ 개체를 전달하는 것은 안전하지 않습니다. |
C4431(수준 4) |
형식 지정자가 없습니다. int로 가정합니다.참고: C에서는 더 이상 기본 int를 지원하지 않습니다. |
C4435(수준 4) |
'class1': 가상 기본 'class2'으로 인해 /vd2 개체 레이아웃 변경 |
C4437(수준 4) |
dynamic_cast 가상 기본 'class1'에서 'class2'에 일부 상황에서 실패할 수 있습니다. |
C4514(수준 4) |
'function': 참조되지 않은 인라인 함수를 제거했습니다. |
C4536(수준 4) |
'type name': 형식 이름이 메타데이터 한계인 'limit'자를 초과합니다. |
C4545(수준 1) |
쉼표 앞의 식이 인수 목록이 없는 함수로 계산됩니다. |
C4546(수준 1) |
쉼표 앞의 함수에 인수 목록이 없습니다. |
C4547(수준 1) |
'operator': 쉼표 앞의 연산자는 의미 없는 연산자입니다. 파생 작업이 있는 연산자여야 합니다. |
C4548(수준 1) |
쉼표 앞의 식은 의미 없는 식입니다. 파생 작업이 있는 식이어야 합니다. |
C4549(수준 1) |
'operator': 쉼표 앞의 연산자는 의미 없는 연산자입니다. 'operator'을(를) 지정하려고 했습니까? |
C4555(수준 1) |
식이 효과가 없습니다. 파생 작업이 있는 식이어야 합니다. |
C4557(수준 3) |
'__assume'에 'effect' 효과가 있습니다. |
C4571(수준 4) |
정보: Visual C++ 7.1부터 catch(…)의 의미 체계가 변경되었습니다. 구조적 예외(SEH)는 더 이상 catch되지 않습니다. |
C4619(수준 3) |
#pragma warning: 경고 번호 'number'이(가) 없습니다. |
C4623(수준 4) |
'derived class': 기본 클래스의 기본 생성자에 액세스할 수 없으므로 기본 생성자를 생성할 수 없습니다. |
C4625(수준 4) |
'derived class': 기본 클래스의 복사 생성자에 액세스할 수 없으므로 복사 생성자를 생성할 수 없습니다. |
C4626(수준 4) |
'derived class': 기본 클래스의 할당 연산자에 액세스할 수 없으므로 할당 연산자를 생성할 수 없습니다. |
C4628(수준 1) |
-Ze에는 digraph가 지원되지 않습니다.문자 시퀀스 'digraph'은(는) 'char'에 대한 대체 토큰으로 해석되지 않습니다. |
C4640(수준 3) |
'instance': 지역 정적 개체를 생성할 때 스레드로부터 안전하게 보호되지 않습니다. |
C4641(수준 3) |
XML 문서 주석에 모호한 상호 참조가 있습니다. |
C4668(수준 4) |
'symbol'은(는) 전처리기 매크로로 정의되어 있지 않으므로 'directives'에 해당하는 '0'으로 바뀝니다. |
C4686(수준 3) |
'user-defined type': 동작과 UDT 반환 호출 규칙이 변경되었을 수 있습니다. |
C4692(수준 1) |
'function': 전용이 아닌 멤버의 시그니처에 어셈블리 전용 네이티브 형식 'native_type'이(가) 있습니다. |
C4710(수준 4) |
'function': 함수를 인라이닝하지 못했습니다. |
C4711(수준 1) |
인라인 확장을 위해 'function' 함수가 선택되었습니다. |
C4738(수준 3) |
32비트 float 결과를 메모리에 저장하면 성능이 저하될 수 있습니다. |
C4820(수준 4) |
'bytes'바이트 채움 문자가 construct 'member_name' 뒤에 추가되었습니다. |
C4826(수준 2) |
'type1'에서 'type2'(으)로의 변환이 부호 확장되었습니다.예기치 않은 런타임 동작이 발생할 수 있습니다. |
C4836(수준 1) |
비표준 확장 사용 : 'type' : 지역 형식 또는 명명되지 않은 형식을 템플릿 인수로 사용할 수 없습니다. |
C4837(수준 4) |
삼중자가 발견되었습니다. '??%c'이(가) '%c'(으)로 바뀝니다. |
C4905(수준 1) |
와이드 문자열 리터럴을 'LPSTR'로 캐스팅했습니다. |
C4906(수준 1) |
문자열 리터럴을 'LPWSTR'로 캐스팅했습니다. |
C4917(수준 1) |
'declarator': GUID는 클래스, 인터페이스 또는 네임스페이스와만 연결할 수 있습니다. |
C4928(수준 1) |
복사 초기화가 잘못되었습니다. 사용자 정의 변환이 암시적으로 두 번 이상 적용되었습니다. |
C4931(수준 4) |
number비트 포인터에 대한 형식 라이브러리를 빌드했다고 간주합니다. |
C4946(수준 1) |
관련 클래스 'class1'과(와) 'class2' 사이에 reinterpret_cast가 사용되었습니다. |
C4962 |
'function': 최적화를 하면 프로필 데이터가 일관성이 없어지므로 프로필 기반 최적화를 사용하지 않습니다. |