美文网首页
Block 介绍及使用

Block 介绍及使用

作者: 梦想不是遥不可及的 | 来源:发表于2019-08-01 15:53 被阅读0次

Block :带有自动变量的函数

语法:

^返回值类型(参数列表){函数表达式}

返回值类型可以省略 ^(参数列表){函数表达式}

参数列表 如果没有值 也可以省略 ^{函数表达式}

//声明Block

返回值类型 (^变量名)(参数列表) = Block表达式

void(^block1)(NSString *a,NSString *b);//没有返回值

//声明Block变量跟赋值 一起

int(^blcok)(int)=^(int a){

        return a*3;

};

NSLog(@"*************%d***************",blcok1(2));

//输出结果 *************6***************

//Block 我用到的主要是传值跟传递方法两个目的

传值的控制器 声明 block

需要传值的地方调用

得到值的控制器 接收

得到的结果:我要的结果block也不是特别难========

到这里就实现了 传值的过程!

__block  __weak 修饰词 区别

1.__block 能修饰对象也能修饰基本数据类型 __weak 能修饰对象不能修饰基本数据类型

2.__block 对象可以在block中被重新赋值 __weak 不可以

3.__block 对象在ARC下可能会导致循环引用 非ARC下会避免循环引用

__weak 只在ARC下使用,可以避免循环引用

默认情况,无法修改block捕获的变量,但是__block却可以,__block 都做了什么。

默认情况下,block拷贝进去的是变量的值,加了__block 之后,block里面的就是变量的内存地址。

相关文章

  • Block 介绍及使用

    Block :带有自动变量的函数 语法: ^返回值类型(参数列表){函数表达式} 返回值类型可以省略 ^(参数列表...

  • Block介绍及使用

    在实际开发中,使用Block比delegate和notification更简洁。于是在项目中会大量的使用block...

  • Block 介绍及简单使用

    多谢两位大佬的分享:(传送入口)http://www.jianshu.com/p/51d04b7639f1[htt...

  • Block的介绍及使用

    前言 这篇随记就是向大家简单介绍下block以及一些简单地用法.我相信对于一些初学者会有一些帮助的. 什么是blo...

  • iOS Block实现原理

    系列文章:iOS Block概念、语法及基本使用iOS Block __block说明符iOS Block存储域及...

  • Block 初见

    Block 初见 介绍 iOS block 的相关知识 目录 Block 背景知识 Block 使用方式 Bloc...

  • iOS Block __block说明符

    系列文章:iOS Block概念、语法及基本使用iOS Block实现原理iOS Block存储域及循环引用 上一...

  • iOS Block存储域及循环引用

    系列文章:iOS Block概念、语法及基本使用iOS Block实现原理iOS Block __block说明符...

  • Objective-C 类之间通信

    block的使用 block的定义和使用 变量的作用域及代码的执行顺序 block外部变量的值在block内部具有...

  • block入门和简单使用(定义,做参数,做返回值,内存管理,循环

    本文略为全面的介绍block的使用:block定义方式,block传值,block循环引用,block内存管理,b...

网友评论

      本文标题:Block 介绍及使用

      本文链接:https://www.haomeiwen.com/subject/lbwqdctx.html