zoukankan      html  css  js  c++  java
  • block关键字的使用

    1.block 是oc的一个数据类型

    2.作用:用了封装一段代码,可以在任何时候调用执行。即在编译的时候忽略block修饰的代码段,在调用这个代码时,也就是运行时,

        编译器会自动加载这个代码, so这样的程序,效率非常高

    3.语法:

      定义一个block类型的变量:有参-》返回值类型 (^变量名) (参数类型1,参数类型2)    。eg. void (^myblock)(int,int)

                   无参-》返回值类型 (^变量名)   eg. void (^myblock)

      定义一个block代码段:    有参-》^(参数类型1 参数名称,参数类型2 参数名称){// 代码,也可以有返回值}

                  无参-》^(){//代码}或 ^{//代码}

      调用一个block代码段:变量名(参数值...)

    4.用typedef 定义一个bolck类型的变量:

      定义:  typedef  返回值类型 (^自定义类型名) (参数类型,...)

      使用:     自定义类型名  变量名=^(参数类型 参数名称,...)`{//代码}

    这个使用类似指向函数的指针:定义-》返回值 (*指针名) (参数类型,...),赋值-》指针名=函数名称,调用-》指针名(参数值,...)

    5.block代码段内,可以访问该代码段外的变量,但是默认不能修改外部的变量,

       使用 __block 关键字修饰的变量,在block代码段内就可以修改了

      eg. __block int a=0;

  • 相关阅读:
    python初体验-函数(1)
    python初体验-数值类型
    python初体验-常见错误类型
    动态规划专题——passage_1
    七夕——ORMAX(线段树)
    七夕——永远在一起(一维dp)
    动态规划4.4——背包问题
    动态规划4.3——最长公共子串问题
    动态规划4.2——子序列问题
    动态规划4.1——基础动态规划问题
  • 原文地址:https://www.cnblogs.com/hui1107464497/p/4509778.html
Copyright © 2011-2022 走看看