4
我在Visual C++ 2005中声明了一个奇怪的问题。我尝试将断言引入到我的程序中,无论断言我尝试使用(assert()或BOOST_ASSERT_MSG )它给出了完全相同的错误信息,它告诉我除了发生调试错误之外别无他法。Assert将不会显示错误消息
调试错误!
计划:...
此应用程序已请求运行时终止它在一个不寻常的方式。 请联系支持团队以获取更多信息。
(按重试来调试应用程序)
下面是我使用
BOOST_ASSERT_MSG(deathRow.size() >= 3, "There are less than 3 blocks being deleted!");
是的,它会给出确切的相同的错误消息的提振断言:
assert(deathRow.size() >= 3 && "There are less than 3 blocks being deleted");
无论我使用的是新的还是旧的项目,都会出现不伦不名的错误。
我不知道为什么。我知道我在另一个程序中使用过断言,并没有这个问题。帮助将不胜感激。
啊,是的,这似乎工作。谢谢,猜猜我会使用_ASSERTE。仍然会想知道为什么其他断言不起作用。 – Mathmagician
@Mathmagician其他版本的工作,他们只是描述性较低,我已经更新了我的答案,以反映你为什么要这样做。 – Motti