C6326
更新:2007 年 11 月
警告 C6326: 可能將常數和其他常數做比較
這項警告表示可能會將常數與其他常數做比較,而這是多餘的程式碼。您必須加以檢查,以確定能在程式碼中正確地達到加入該程式碼所要的目的。在某些情況下,則必須簡化測試條件才能達到相同的結果。
範例
下列程式碼因為比較了兩個常數而產生這項警告:
#define LEVEL
const int STD_LEVEL = 5;
const int value =
#ifdef LEVEL
10;
#else
5;
#endif
void f()
{
if( value > STD_LEVEL)
{
// code...
}
else
{
// code...
}
}
下列程式碼利用 #ifdef 陳述式 (Statement) 決定要執行哪一段程式碼,顯示更正這項警告的其中一個方法:
#define LEVEL
const int STD_LEVEL = 5;
const int value =
#ifdef LEVEL
10;
#else
5;
#endif
void f ()
{
#ifdef LEVEL
{
// code...
}
#else
{
// code...
}
#endif
}