garaster 2013-04-27 02:09 采纳率: 0%
浏览 2350
已采纳

关于枚举block中的数组

self.myArray = @[ [^{ NSLog(@"a"); } copy],
                  [^{ NSLog(@"b"); } copy]];

然后

[self.myArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
    // This syntax is wrong, but I hope you get my intention
    void (^) (void) block = obj;  
    block();
}];

假如可以不用typedef,在枚举的时候怎么剔除block?

  • 写回答

3条回答 默认 最新

  • AldisZhan 2013-04-27 15:48
    关注

    应该改成

    void (^block )(void) = obj;
    

    关于block定义可以看这个例子

    void (^blockReturningVoidWithVoidArgument)(void);
    int (^blockReturningIntWithIntAndCharArguments)(int, char);
    void (^arrayOfTenBlocksReturningVoidWithIntArgument[10])(int);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大