zoukankan      html  css  js  c++  java
  • block的定义和使用

    1.block可以用来保存一段代码,或者用来封装一段代码。--->代码段,代码块。
    2.block的标志是^
    3.block跟函数很像
    可以保存代码;
    可以有返回 值;
    也可以有行参;
    调用方式一样;
    4.定义一个block
    #pragma mark 不带参数的block
    void (^outputblock)() = ^{
    NSLog(@"------------");
    };
    outputblock();
    }
    5.带行参的block
    #pragma mark - 带参数的block
    int (^sumblock)(int, int) = ^(int a,int b){

    return a+b;
    };
    int sum = sumblock(23,23);
    int sum1 = sumblock(1,2);
    NSLog(@"%d",sum1);
    NSLog(@"%d",sum);


    #pragma mark - 输出n条横线
    void(^myblock)(int) = ^(int n){
    for (int i = 0; i < n; i++) {
    NSLog(@"-----------------");
    };
    };
    myblock(10);
    6.如果block没有行参,可以省略后边的小括号。
    7.使用typedef来定义一个block的类型
    typedef int(^Myblock)(int,int);
    Myblock sumblock = ^(int a,int b){

    return a+b;
    }
    Myblock minus = ^(int a,int b){
    return a-b;
    }

    8.block可以访问外边的变量,但不可以修改外部的局部变量

  • 相关阅读:
    字符串
    决策树
    结构体实验
    指针实验
    打印杨辉三角
    P176 1.2.3
    第七次作业
    第六次作业
    第五次作业
    第四次修改
  • 原文地址:https://www.cnblogs.com/yinqiang/p/3439427.html
Copyright © 2011-2022 走看看