OC基础:block.字面量

本文详细介绍了Objective-C中的Block语法,包括Block的基本概念、如何定义及调用Block,以及Block内部访问变量的方法等内容。Block是由C语言实现,运行效率高,是对C语言函数的一种扩展。

block 块语法,能够用block去保存一段代码,或者封装一段代码.

block 实际是由c语言实现的,运行效率非常高.

block 实际借鉴了函数指针的语法.


block

(^)(參数类型1 參数名1,參数类型2 參数名2...);

返回值类型  (^)();

1.没有參数,括号也不能省略

2.參数名能够省略


void(^myBlock1)();   无參数无返回值

void(^myBlock2)(int a,int b);   有參数无返回值

int(^myBlock3)();    无參数有返回值

int(^myBlock4)(int a,int b);   有參数有返回值


block实现

格式:

^(參数类型1 參数名1,參数类型2 參数名2....){

运行代码

};

注意{ }外面须要加;


如:myBlock1=^(){

NSLog(@"吃糖吗?");

};


block调用

myBlock1();


起别名:typedef int(^BLOCK)(int ,int );   


block定义时,block块中的代码不运行,调用block的时候block块中的代码才运行.block是c语言中的函数的一种拓展.


block块内部訪问变量

1.全局变量block能够直接使用,不须要加_block修饰

2.局部变量须要加__block修饰,才干在block块内部改动

3.局部变量不加__block修饰,仅仅能使用(看),无法改动


-----------------------------------------------------------------------------------

字面量:便利的表示方法

NSNumber *number1=@100;

NSArray *array1=@[@"1",@"2",@"3"];

NSMutableArray *mArray=@[@"1",@"2",@"3"].mutableCopy;

//字典的字面量

//    :前是key   :后是value

    NSDictionary *dict=@{@"a":@"1",@"b":@"2",@"c":@"3"};

 NSMutableDictionary *mDict=@{@"a":@"1",@"b":@"2",@"c":@"3"}.mutableCopy;




转载于:https://www.cnblogs.com/bhlsheji/p/5324056.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值