在C++0x中有类似static_assert的东西,它会给出警告而不是错误
In C++0x is there something like static_assert which gives a warning instead of an error?
我想这样做是为了使用效率低但不一定不正确的方法。
否。
断言失败表示程序无法完成的问题(无论是执行[运行时断言]还是编译[静态断言])。
事实上,实现可以做任何事情,只要它们发出诊断(包括继续执行)。但是,在实践中,主流工具链的行为基本相同:它们会出错。你当然不能把它们破解成用户定义的东西。
在C++0x中引入了这些属性。看见http://docwiki.embarcadero.com/RADStudio/en/C%2B%2B0x_attribute_deprecated例如。
不是标准的。在许多编译器中都可以找到#warning
,但在大多数情况下都不一样。
相关文章:
- 警告处理为错误这里有什么问题
- 隐式重新解释引用时强制转换,没有警告/错误
- 我在 C++ 代码中遇到错误警告:控制到达非空函数 [-Wreturn 类型] 的末尾
- 使用 reverse_iterator 而不是const_reverse_iterator并获得讨厌的编译器警告和错误
- GCC 警告和 gcc 错误消息之间的区别
- 在 eclipse 中,将宏重定义视为错误而不是警告
- 在 GCC 中启用"differing levels of indirection"警告/错误
- 当警告为错误时使用 [[已弃用]] 属性 (-Werror)
- G++ 编译器未为未定义的方法生成错误/警告
- 常量更改而不const_cast<> 为什么没有编译器警告/错误?
- 在制作过程结束时显示警告/错误的数量
- 钻石继承方案在 G++ 中编译良好,但在 VC++/Eclipse 中产生警告/错误
- 是否有任何方法可以避免警告/错误模板实例化回溯
- 如何捕获python警告错误并'bury'它?
- OSX:ld:警告:错误符号操作:适用于核心库
- Visual Studio的C4345警告错误吗?
- Visual Studio 上的 CRT SECURE 警告/错误是怎么回事?
- 禁用单个警告错误
- 如何在MSVC中为传递给变分函数的非POD参数启用警告/错误
- 警告错误问题