码迷,mamicode.com
首页 > 移动开发 > 详细

iOS开发——语法OC篇&Block回顾

时间:2015-08-15 00:01:13      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:

 

Block回顾

 

这里知识简单介绍一下关于Block的语法,如果你觉得这里很简单或者想学习更深入的的使用清查看记者之前写的使用block传值和高级Block使用:

http://www.cnblogs.com/iCocos/p/4534281.html

http://www.cnblogs.com/iCocos/p/4550169.html

http://www.cnblogs.com/iCocos/p/4659878.html

http://www.cnblogs.com/iCocos/p/4655846.html

 

  • block : block 函数,代码块
  • block 是一个 "特殊" 对象

        

函数:

  • 1.无返回值无参数
  • 2.无返回值有参数
  • 3.有返回什又有参数

        

Block:

  • 1.无返回值无参数
  • 2.无返回值有参数
  • 3.有返回什又有参数

      

无返回值无参数

C语言函数:

 

1 //无返回值无参数函数
2 void say1(){
3     NSLog(@"say1.....");
4 }
    // 调用函数

    say1();

    

 


  OC代码块:

 1 //1.无返回值无参数 block
 2 
 3 void test1(){
 4 
 5     //1.无返回值无参数 block
 6 
 7     void (^say1Block)() = ^{
 8 
 9         NSLog(@"say1block...");
10 
11     };
12 
13     // 调用block
14 
15     say1Block();
16 
17 }

 

 无返回值有参数

 C语言函数:

1 //无返回值有参数函数
2 
3 void say2(int age){
4 
5     NSLog(@"I‘am %d year old!",age);
6 
7 }
    
    //调用
    say2(18);

 

  OC代码块:

 1 // 2.无返回值有参数 block
 2 
 3 void test2(){
 4 
 5 
 6     void (^say2Block)(int) = ^(int age){
 7 
 8         NSLog(@"I‘am %d year old!",age);
 9 
10     };
11 
12 
13     say2Block(20);
14 
15  
16 
17 }

 

有返回值有参数

 C语言函数:

1 //有返回值有参数函数
2 
3 int sum(int a,int b){
4 
5     return a + b;
6 
7 }
8 
9  

 

 OC代码块:

 1 //3.有返回什又有参数 block
 2 
 3 void test3(){
 4 
 5       int (^sumBlock)(int,int) = ^(int a,int b){
 6 
 7             return a + b;
 8 
 9         };
10 
11         int result1 = sum(10, 10);
12 
13         int result2 = sumBlock(11,11);
14 
15         NSLog(@"result1:%d result2:%d",result1,result2);
16 
17         
18 
19         // 对block进行typedef
20 
21  
22 
23         // 对"无返回值" 无参数block 进行重定义
24 
25         typedef void (^Say2Block)();
26 
27         
28 
29         Say2Block block = ^{
30 
31             NSLog(@"Say2Block ========");
32 
33         };
34 
35         
36 
37         block();
38 
39 }

 

iOS开发——语法OC篇&Block回顾

标签:

原文地址:http://www.cnblogs.com/iCocos/p/4731404.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!