c4127

    13熱度

    5回答

    下面的代碼生成在Visual Studio 2010(其中alias_wchar_t是wchar_t的別名)警告C4127(條件表達式是常數): if (sizeof(alias_wchar_t) == sizeof(wchar_t)) // warning occurs here { // do stuff } else { // do other stuff }

    1熱度

    2回答

    #define Val_MAX 0 int main() { if(Val_MAX) printf("The value is %d",VALUE_MAX); return 0; } 恆定當我試圖編譯上述程序if(VALUE_MAX)是表示警告 條件表達式是恆定的。 如何解決上述警告?

    1熱度

    2回答

    目前我正在用CppUnit編寫C++單元測試。最近,我需要檢查一個例外是在特定的情況下,使用CppUnits宏拋出: CPPUNIT_ASSERT_THROW( boost::get<FooClassInBoostVariant>(m_boostVariantFooOrBar), boost::bad_get); 測試的編譯過程中的警告讓我感到驚訝(上VS2010,但會在其他

    7熱度

    2回答

    對於代碼, while(1) { /* ..... */ } MSVC生成下列警告。的警告 warning C4127: conditional expression is constant MSDN頁建議使用for(;;),而不是while(1)。我想知道for(;;)有哪些優勢,以及爲什麼它會在while中警告持續使用? 我應該在GCC上使用哪個標記以獲得相同的警告?