`

代码块 block

阅读更多

代码块block讲解:

http://blog.csdn.net/totogo2010/article/details/7839061

 

block深入学习:

http://www.cnblogs.com/studentdeng/archive/2012/02/03/2336863.html

 

block学习详细:

http://geeklu.com/2012/01/block/

 

 

Apple官方讲解:

http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOSCh/chapters/WriteObjective-CCode/WriteObjective-CCode/WriteObjective-CCode.html

 

 

基本语法包括:

  • 声明Block变量
  • 为Block变量赋值
  • 声明Block类型(typedef)
  • 直接匿名调用Block
  • __block关键字的使用

 


代码块block

1、代码块本质上与变量一样,都在函数中声明然后使用,只不过一个变量中存储一个值,一个代码块存储一个函数体(一段代码);

2、代码块的定义:有返回值,有参数,有变量名;
3、__block关键字 修饰局部变量,使局部变量变得特殊,可以在block代码块中使用:

  • 把全局变量和局部变量作为参数传递到一个函数中,这个变量会copy一份传入到函数,函数中做的操作不会影响变量的值(根本就是两个东西)。
  • 把全局变量和局部变量作为参数传递到一个代码块中,局部变量必须要__block来修饰,用来告诉编译器这个局部变量有些特殊可以在代码中使用,这些变量在代码块中使用就是本来的变量。
分享到:
评论

相关推荐

    深入理解Ruby中的代码块block特性

    ### 深入理解Ruby中的代码块block特性 在Ruby编程语言中,代码块(block)是一种非常重要的概念,它不仅频繁地出现在各种程序中,还具有独特且强大的功能。本文将详细介绍Ruby中的代码块特性,包括其定义、用法以及...

    静态代码块

    1. **父类的静态代码块**:`parent static block` 2. **子类的静态代码块**:`child static block` 3. **父类的实例代码块**:`parent block` 4. **父类的构造函数**:`parent constructor` 5. **子类的实例代码块**...

    block实现例子(介绍block的代码)

    Block是Objective-C编程语言中的一个强大特性,它允许我们在代码中定义可重用的代码块,这些代码块可以像函数一样被传递、存储和执行。Blocks在iOS开发中广泛应用于事件处理、异步操作、排序和过滤数据等场景。在本...

    java 静态代码块通过类加载器获取资源文件例子

    在Java编程中,静态代码块(Static Block)和类加载器(Class Loader)是两个重要的概念,它们在软件开发中有着广泛的应用。本案例聚焦于如何利用静态代码块结合类加载器来高效地获取资源文件,尤其是属性配置文件。...

    有关static block静态代码块和单态设计模式

    静态代码块,也就是`static block`,是Java中的一种特殊构造,它不包含在任何方法内,当类被加载时,静态代码块会被自动执行且仅执行一次。这个特性使得静态代码块成为初始化类静态变量的理想选择。 类加载的过程是...

    Java 普通代码块静态代码块执行顺序(实例讲解)

    1. 静态代码块(Static Block):这些代码块在类加载时执行,用于初始化类级别的变量或执行一些仅需执行一次的设置操作。静态代码块与类相关联,而不是类的实例。 2. 普通代码块(Instance Initialization Block)...

    java中的static变量,方法,代码块

    在Java编程语言中,`static`关键字扮演着极其重要的角色,它主要用于声明类的成员变量、方法以及代码块为静态。本文将深入探讨`static`在变量、方法和代码块中的应用,通过示例和解释帮助读者更深刻地理解其功能与...

    Ruby中的block代码块学习教程

    Ruby中的代码块(block)是语言的核心特性之一,它允许开发者定义可执行的代码段,并在需要的时候通过`yield`关键字调用。代码块通常由`{}`或`do...end`包围,它们不是独立的类,但可以转换为`Proc`类的对象。对于初学...

    Java常见笔试、面试题目深度剖析,方法重写详解、静态代码块与构造方法执行顺序问题

    其次,我们要了解**静态代码块**(Static Initializer Block)。静态代码块是在类加载时执行的一段代码,它不依赖于类的实例,而是与类本身相关联。静态代码块通常用来初始化类级别的变量,或者执行一些仅需执行一次的...

    objective-c 中代码块(blocks)详解

    为了使代码块能够修改这些变量,需要在变量声明时加上 `_block` 前缀。例如: ```objective-c NSArray *stringsArray = [NSArray arrayWithObjects:@"string1", @"String21", @"string12", @"String11", @"Strîng...

    代码块的简单使用

    简单的自定义代码块使用方法。 typedef void (^myBlock)(NSInteger i); @property (copy, nonatomic) void (^anothBlock)(NSString *); void (^printBlock)(NSString *str);

    block puzzle jewel 方块拼图消除游戏安卓源码

    "Block Puzzle Jewel"是一款基于Android平台的方块拼图消除游戏,它的源码为我们提供了深入理解游戏开发,尤其是休闲益智类游戏开发的机会。这款游戏中,玩家需要将各种形状的方块拖放到游戏板上,当某行或某列填满...

    iOS中block的定义与使用

    代码块block是苹果在iOS4开始引入的对C语言的扩展,用来实现匿名函数的特性,block是一种特殊的数据类型,其可以正常定义变量、作为参数、作为返回值,特殊地,block还可以保存一段代码,在需要的时候调用,目前block已经...

    第04章 面向对象(上) 12 代码块

    1. **块代码(Block)**:这是最基础的代码块,由花括号 `{}` 包围的一系列语句。它可以出现在任何允许执行语句的地方,例如在方法内部或者在控制流语句中。 2. **初始化块(Initializer Block)**:包括实例初始化...

    探索Objective-C中的Block:强大灵活的代码块

    Objective-C(通常缩写为Obj-C或OC)是一种通用的编程语言,它主要被用于苹果公司的操作系统,如macOS和iOS,以及它们的应用开发框架,如Cocoa和Cocoa Touch。Objective-C是C语言的一个超集,这意味着它包含了C语言...

    IOS block回调代码实例Demo

    在iOS开发中,Block是一种强大的特性,它允许我们在代码中定义匿名函数,即不关联任何特定方法或函数的代码块。Block不仅可以作为局部变量、函数参数,还可以用于回调,这正是"IOS block回调代码实例Demo"所展示的...

    代码编辑器,显示行号

    CodeMirror是一款广泛使用的JavaScript代码编辑器,它专为在网页上提供高质量的代码输入环境而设计。这款编辑器以其灵活性和强大的功能集而备受开发者喜爱。以下是对标题、描述和标签所涉及知识点的详细说明: 1. *...

    swift-Xcode一键导入代码块一键调用提高开发效率

    Xcode 一键导入代码块 一键调用 提高开发效率 One button import code block, a key call to improve development efficiency

Global site tag (gtag.js) - Google Analytics