zoukankan      html  css  js  c++  java
  • iOS 快语句(block)浅析

    一,直接上code:

    // 在快语句中要改变快语句外面的值,有三种情况:static,__block与全局变量

            __block int a = 1;

            

            // 定义快语句

            void (^hgBlock)() = ^{

                a = 10;

                NSLog(@"我在快语句中等你 a=%d", a);

            };

            

            // 执行快语句

            hgBlock();

    二,分析快语句

      使用终端进入main.m文件夹,执行指令:clang -rewrite-objc main.m,然后回车.最终生成一个main.cpp.

      open main.cpp可以看到如下代码:

      得出结论:block的本质就是结构体的指针.

      还要注意的是上面的a是怎么传入快语句的,下图所示:

    传入的是地址!!!!!所以能改值!!眼来如痴啊!!!!这个很重哦!

  • 相关阅读:
    Photoshop操作指南
    Photoshop操作指南
    财经法规四-2
    财经法规四-1
    财经法规三-3
    财经法规复习三-2
    财经法规复习三-1
    财经法规复习卷一-2
    财经法规二-3
    财经法规二-2
  • 原文地址:https://www.cnblogs.com/iOS771722918/p/4852632.html
Copyright © 2011-2022 走看看