컴파일러 경고(수준 1) C4806
'operation': 안전하지 않은 연산입니다. 'type' 형식의 값('type' 형식으로 확장)이 주어진 상수와 같을 수 없습니다.
이 메시지는 b == 3
과 같은 코드에 대해 경고합니다. 여기서 b
는 bool
형식입니다. 승격 규칙으로 인해 bool
이 int
로 승격됩니다. 이것은 합법적이지만 결코 될 true
수 없습니다. 다음 샘플에서는 C4806을 생성합니다.
// C4806.cpp
// compile with: /W1
int main()
{
bool b = true;
// try..
// int b = true;
if (b == 3) // C4806
{
b = false;
}
}