1

当我声明这样的方法时:

- (void)doAnythingWithThisBlock:(void(^)(NSString *, ... NS_REQUIRES_NIL_TERMINATION))AnythingBlock;

它给出了编译错误:

Expected ')'

但是当我这样声明时:

- (void)doAnythingWithThisBlock:(void(^)(NSString *, ...))AnythingBlock;

它编译良好并按预期工作

我们不能在声明一个接受输入作为具有可变数量参数的块的方法时使用 - NS_REQUIRES_NIL_TERMINATION 吗?

我正在 XCode 4.2 中尝试

4

1 回答 1

1

我猜 NS_REQUIRES_NIL_TERMINATION 仅用于方法声明1

但是,您可以尝试将您的块类型定义为某种类型并将其作为参数传递:可能铿锵会吃掉它吗?

于 2012-04-05T13:02:16.983 回答