NSAssert和发布

时间:2012-03-18 07:08:05

标签: objective-c

我可以在发布代码中使用此字符串吗?

NSAssert([entity buildEntity], @"Building failed at entity with id: %d", entity.entityId);

[entity buildEntity]返回BOOL并且必须被调用。

所以问题是:如果我在发布中关闭断言(Xcode 4的默认行为),那么断言内的代码块是否会被执行?

1 个答案:

答案 0 :(得分:1)

否,buildEntity不会在发布模式下执行 使用下面的代码,这在调试和发布模式下的行为相同。

id lValue = [entity buildEntity];
NSAssert(lValue, @"Building failed at entity with id: %d", entity.entityId);