简述
Q_ASSERT 可以做一些特殊值,或者关键点的检查。注意:如果判断为false,会打印debug信息,并且程序停止后续操作。
在.pro文件中加入QT_NO_DEBUG可以停止Q_ASSERT检查
DEFINES += QT_NO_DEBUG
Q_ASSERT
void Q_ASSERT(test)
int divide(int a, int b)
{
Q_ASSERT(b != 0);
return a / b;
}
如果b等于0打印:ASSERT: “b != 0” in file div.cpp, line 7
Q_ASSERT_X
void Q_ASSERT_X(test, const char *where, const char *what)
int divide(int a, int b)
{
Q_ASSERT_X(b != 0, "divide", "division by zero");
return a / b;
}
如果b等于0打印:ASSERT failure in divide: “division by zero”, file div.cpp, line 7