zoukankan      html  css  js  c++  java
  • objective-c(五)关于代码块的使用

      关于objective-c语言中,有一种技术叫做代码块技术。代码块技术实际上是将函数类型声明称变量类型。以变量的类型存在。在其中可以进行计算等操作。

      声明方法:

      int (^demo)(NSString *x)=^{return 0;};

      以上声明就是一个代码块类型的数据的声明,代码块可以被当作是参数进行传递。类型是最开始声明的类型,在代码块的部分也一定要返回相应的数据类型。demo就是这个代码块的名字。调用的时候,这个就相当于变量,使用它来进行调用。调用的使用。参数的位置不仅可以使用一个普通的相同类型的变量来接收,也可以使用以下的方法进行接收。

      -(NSMutableArray *) filterArray:withBlock:(BOOL(^)(id))block{

      }

      上面就是在创建方法时。明确指定传入的是一个代码块变量。

      运行的方式是,在程序调用方法时,如果传入了代码块变量,程序会先调用代码块,执行完毕之后,将哪个返回数据返回到参数上。然后在执行后面的方法。

      当作为参数是。使用的如下

      demo(参数)

      以上格式即可。并且在oc中的多线程可以支撑到代码块。但是不建议使用。相对于java的多线程oc的多线程使用麻烦。而且代码块有点相似于递归,非常容易形成死循环。

  • 相关阅读:
    07-图4 哈利·波特的考试 (25分)
    Windows环境下清除SVN文件
    查看SQL SERVER 2008R2 表大小
    Oauth支持的5类 grant_type 及说明
    SignalR的性能监测
    Loadrunner11安装
    Azure ServiceBus 通信失败问题
    sql server text类型 存储问题
    System.BadImageFormatException
    InputStream只能读取一次的解决办法 C# byte[] 和Stream转换
  • 原文地址:https://www.cnblogs.com/imtodd/p/6640448.html
Copyright © 2011-2022 走看看