简单的问题。
如果我有
BOOL a = [myInst function];
NSAssert(a, @"...")然后,我会在发布版本中收到警告,因为没有使用a。我想断言一个从函数返回的BOOL,但我不需要使用它。我该怎么解决它呢?
我不能把整个表达式放到NSAssert中,因为它不会在发行版中编译。
发布于 2012-08-02 16:31:27
只要导致a的表达式没有副作用,为什么不直接把它放到NSAssert中呢?例如。
NSAssert(<expr>, @"...")请注意,如果<expr>有副作用,例如打印一些东西,这在非调试版本中可能不会发生。
发布于 2012-08-02 16:38:02
你试过了吗?
#pragma GCC diagnostic ignored "-Wunused-variable"
<your function>
#pragma GCC diagnostic warning "-Wunused-variable"发布于 2012-08-02 16:35:09
我不喜欢这个警告。
以下是我在这些情况下所做的:
BOOL a = NO;
a = [myInst function];
NSAssert(a, @"...")https://stackoverflow.com/questions/11773691
复制相似问题