static-assert

    5熱度

    2回答

    我有4個INT常數: const int a1 = 1024; const int a2 = 768; const int b1 = 640; const int b2 = 480; ,我想靜態檢查它們具有相同的比例。靜態檢查,我使用BOOST_STATIC_ASSERT,但它不支持表達式。 我嘗試這樣做: BOOST_STATIC_ASSERT(1e-5 > std::abs((dou

    72熱度

    7回答

    你可以舉一個例子,其中static_assert(...) 'C++0x'將優雅地解決手中的問題? 我熟悉運行時間assert(...)。我應該在什麼時候比普通assert(...)更喜歡static_assert(...)? 此外,在boost有一種叫做BOOST_STATIC_ASSERT,是否與static_assert(...)相同?

    3熱度

    3回答

    on 1.43 boost似乎BOOST_STATIC_ASSERT只允許放置一個布爾值,是否有一些替代方案允許我在編譯錯誤上顯示消息?

    16熱度

    8回答

    我們現有的編譯時聲明實現基於負數組索引,並且它在GCC上提供較差的診斷輸出。 C++ 0x的static_assert是一個非常好的功能,它提供的診斷輸出要好得多。我知道GCC已經實現了一些C++ 0x功能。有誰知道static_assert是否在其中,如果是GCC版本以後的話?

    22熱度

    6回答

    因爲在我工作的公司中禁止提升,所以我需要在純C++中實現它的功能。我已經研究過助推源,但他們似乎太複雜,至少對我來說是無法理解的。我知道在C++ 0x standart中有一個叫static_assert()的東西,但我不想使用任何C++ 0x功能。

    7熱度

    2回答

    比方說,我有這幾種: struct A { int a; }; struct B { int b; }; struct C : public A, public B { int c; }; 一個C*指針可以轉換爲A*指針,而完全不調整的實際地址。但是,C*投射到B*時,值必須更改。我希望確保兩個相關的類型可以在不改變地址的情況下相互轉換(即沒有多重繼

    12熱度

    3回答

    我想這樣做的用法可能效率低下,但不一定不正確。

    4熱度

    4回答

    我們有一個const數組,結構如下: static const SettingsSuT _table [] = {{5,1},{1,2},{1,1},etc}; 結構有以下幾點: size_bytes: 項數: 其他 「元數據」 的成員 因此 「累計大小」 是size_bytes *項數爲單個元素。所有這些信息都在const數組中,在編譯時可用。但請注意,_table的總大小與EEPROM本身的大

    3熱度

    4回答

    我有一個只適用於靜態局部變量的宏(因爲它使用內聯彙編符號來提取有關變量的數據)。我需要一種方法來執行,該輸入宏確實是一個靜態的局部變量: 正確: func f() { static int x; my_macro(x); } 不正確: func f() { int x; my_macro(x); } 我與海灣合作委員會的工作爲C(無C++)。