zoukankan      html  css  js  c++  java
  • block浅析

       // block用来保存一段代码
        // block的标志:^
        /*
         block跟函数很像
         1.可以保存代码
         2.有返回值
         3.有形参
         4.调用方式一样
         */
        
        // 定义block变量
        void (^myblock)() = ^{
            
            NSLog(@"88888");
            NSLog(@"88888");
        };
        
        // 利用block变量调用block内部的代码
        myblock();
    
    /*
     1)如何定义block变量
     int (^MyBlock)(int, int);
     void (^MyBlock)();
     
     2)如何利用block封装代码
     ^(int a, int b) {
        return a - b;
     }
     
     ^(){
        NSLog(@"*************");
     }
     或者
     ^{
        NSLog(@"*************"");
     }
     上面两个等价
     
     3)block访问外面的变量
     *block内部可以访问外面的变量
     *默认情况下,block内部不能修改外面的局部变量
     *给局部变量加上__block关键字,这个局部变量就可以在block内部修改
     
     4)利用typedef变量定义block类型
     typedef int(^MyBlock) (int ,int);
     // 以后就可以利用MyBlock这种类型来定义block变量
     MyBlock myblock;
     MyBlock b1,b2;
     
     b1 = ^(int a, int b) {
     return a - b;
     };
     
     MyBlock b3 = ^(int a, int b) {
     return a - b;
     };
     */
  • 相关阅读:
    HTML标签
    进程&线程&协程
    04 jQuery的属性操作
    03 jQuery动画效果
    02 jQuery的选择器
    01 jQuery的介绍
    软件测试入门-测试模型(V型 W型 H型)
    软件测试概述
    软件测试基础理论
    17 案例
  • 原文地址:https://www.cnblogs.com/521it/p/5020168.html
Copyright © 2011-2022 走看看