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++)。