#include
int main()
{
int a = 177;
BOOST_ASSERT(a < 99);//等同于标准库的 assert()
BOOST_ASSERT_MSG(a < 99,"a应该小于99");
}
默认这两个宏仅在debug模式下有用。
在导入头文件 “boost/assert.hpp” 之前添加:
#define BOOST_DISABLE_ASSERTS
可使上面两个断言的宏不起作用。
如果在导入头文件之前添加:
#define BOOST_ENABLE_ASSERT_HANDLER
那么:
- 在release模式断言也将运行。
- 处理断言的方式不是d出d窗,而是将断言信息发到两个函数,函数已经定义好,需要用户自己实现其内容。
#define BOOST_ENABLE_ASSERT_HANDLER
#include
namespace boost
{
//处理BOOST_ASSERT
void assertion_failed(char const * expr,
char const * function,
char const * file,
long line)
{
qDebug()<<"断言失败assertion_failed:"<
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)