C++ 如何在ios/xcode中的c断言之后跳过或继续?
我已经搜索过了,但找不到如何(或是否)在xcode 4/ios 5.0中的c assert()之后跳过或继续。我使用的是C++而不是ObjuleC。我需要定义自己的断言来实现这一点吗C++ 如何在ios/xcode中的c断言之后跳过或继续?,c++,c,ios,xcode4,C++,C,Ios,Xcode4,我已经搜索过了,但找不到如何(或是否)在xcode 4/ios 5.0中的c assert()之后跳过或继续。我使用的是C++而不是ObjuleC。我需要定义自己的断言来实现这一点吗 谢谢~当断言的条件为false时,assert()s的目的是停止执行(和/或将您放入调试器)。因此,不希望在断言之后“继续”,因为它表示违反了某些先决条件/不变量,这将不可避免地导致以后的坏事情(tm)。“assert(expr)”只是(NDEBUG未定义)“if(expr==0)abort();”的缩写形式。也许
谢谢~当断言的条件为false时,
assert()
s的目的是停止执行(和/或将您放入调试器)。因此,不希望在断言之后“继续”,因为它表示违反了某些先决条件/不变量,这将不可避免地导致以后的坏事情(tm)。“assert(expr)”只是(NDEBUG未定义)“if(expr==0)abort();”的缩写形式。也许这是一种比使用断言更好的方法(不使用abort()。断言通常不会被忽略。它们让程序员与其他程序员交流“这永远不会发生”。如果您想知道如果继续通过断言会发生什么,请将其注释掉,并查看程序在正常失败后的行为。需要更多信息。断言检查什么?断言是在您的代码中还是在您链接的代码中?您的应用程序是否停止在assert()
中运行?使用NDEBUG编译如何?