iOS block示例
//
// block.h
// Block
//
// Created by tqh on 15/4/12.
// Copyright (c) 2015年 tqh. All rights reserved.
// #import <Foundation/Foundation.h> typedef void(^block1) (id obj); typedef void(^block2)(); typedef NSInteger(^block3)(); @interface block : NSObject //带参数
+ (void)initBlock1:(void(^)(id obj))block sum:(NSInteger)sum; //typdef
+ (void)initBlock11:(block1)block sum:(NSInteger)sum; //不带参
+ (void)initBlick2:(void(^)())block sum:(NSInteger)sum; //typedef
+ (void)initBlock22:(block2)block sum:(NSInteger)sum; + (void)blockTest:(block2)block; + (void)initBlock3:(block3)block sum:(NSInteger)sum; @end
//
// block.m
// Block
//
// Created by tqh on 15/4/12.
// Copyright (c) 2015年 tqh. All rights reserved.
// #import "block.h" @implementation block + (void)initBlock1:(void (^)(id))block sum:(NSInteger)sum{
NSString *str = @"返回字符串";
if (sum > ) {
block(str);
}
} + (void)initBlock11:(block1)block sum:(NSInteger)sum{
NSString *str = @"返回字符串";
if (sum > ) {
block(str);
}
} + (void)initBlick2:(void (^)())block sum:(NSInteger)sum{ if (sum > ) {
block();
} } + (void)initBlock22:(block2)block sum:(NSInteger)sum{ if (sum > ) {
block();
} } +(void)blockTest:(block2)block
{
block();
} +(void)initBlock3:(block3)block sum:(NSInteger)sum{ NSInteger index = block();
NSLog(@"%ld",index); } @end
//
// main.m
// Block
//
// Created by tqh on 15/4/12.
// Copyright (c) 2015年 tqh. All rights reserved.
// /**
* block回调
*
* @param argc
* @param argv
*
* @return
*/ #import <Foundation/Foundation.h>
#import "block.h"
int main(int argc, const char * argv[]) {
@autoreleasepool { [block initBlock1:^(id obj) {
NSLog(@"%@",obj);
} sum:]; [block initBlock11:^(id obj) {
NSLog(@"%@",obj);
} sum:]; [block initBlick2:^{
NSLog(@"block2");
} sum:]; [block initBlick2:^{
NSLog(@"block22");
} sum:]; [block blockTest:^{
NSLog(@"");
}]; [block initBlock3:^NSInteger{
return ;
} sum:];
}
return ;
}
iOS block示例的更多相关文章
- iOS block从零开始
iOS block从零开始 在iOS4.0之后,block横空出世,它本身封装了一段代码并将这段代码当做变量,通过block()的方式进行回调. block的结构 先来一段简单的代码看看: void ...
- # iOS Block的本质(三)
iOS Block的本质(三) 上一篇文章iOS Block的本质(二)中已经介绍过block变量的捕获,本文继续探寻block的本质. 1. block对对象变量的捕获,ARC 环境 block一般 ...
- iOS Block界面反向传值
在上篇博客 <iOS Block简介> 中,侧重解析了 iOS Block的概念等,本文将侧重于它们在开发中的应用. Block是iOS4.0+ 和Mac OS X 10.6+ 引进的对C ...
- iOS block 机制
本文要将block的以下机制,并配合具体代码详细描述: block 与 外部变量 block 的存储域:栈块.堆块.全局块 定义 块与函数类似,只不过是直接定义在另一个函数里,和定义它的那个函数共享同 ...
- ios Block详细用法
ios Block详细用法 ios4.0系统已开始支持block,在编程过程中,blocks被Obj-C看成是对象,它封装了一段代码,这段代码可以在任何时候执行.Blocks可以作为函数参数或者函数的 ...
- iOS Block的本质(四)
iOS Block的本质(四) 上一篇文章iOS Block的本质(三)中已经介绍过block变量的捕获,本文继续探寻block的本质. 1. block内修改变量的值 int main(int ar ...
- iOS Block的本质(二)
iOS Block的本质(二) 1. 介绍引入block本质 通过上一篇文章Block的本质(一)已经基本对block的底层结构有了基本的认识,block的底层就是__main_block_impl_ ...
- iOS Block的本质(一)
iOS Block的本质(一) 1.对block有一个基本的认识 block本质上也是一个oc对象,他内部也有一个isa指针.block是封装了函数调用以及函数调用环境的OC对象. 2.探寻block ...
- (译)IOS block编程指南 1 介绍
Introduction(介绍) Block objects are a C-level syntactic and runtime feature. They are similar to stan ...
随机推荐
- C#模糊查询绑定datagridview
private CollectionViewSource wgdData = new CollectionViewSource(); private DataTable Ds_wgd { get { ...
- Sql Server 语句
##目录 #####清除缓存 DBCC FREEPROCCACHE; DBCC DROPCLEANBUFFERS; SELECT stock.IdStock, stock.Descr FROM [In ...
- 初识java之Mina(一)
Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于 TCP/IP.UDP/IP协议栈的通信框架(当然,也可以提供 JAVA 对象的序列化服务.虚拟机管道通信服务等) ...
- 微价值:专访《甜心爱消除》的个人开发者Lee,日入千元
[导语] 我们希望能够对一些个人开发者进行专访,这样大家更能显得接地气,看看人家做什么,怎么坚持.<甜心爱消除>作者Lee是三群的兄弟,也关注微价值.微价 值的文章还是可以的,得到一些业内 ...
- EntityFramwork(1) 源地址https://msdn.microsoft.com/zh-cn/data/jj193542
1.创建应用程序 简单起见,我们将构建一个使用 Code First 执行数据访问的基本控制台应用程序. 打开 Visual Studio "文件"->"新建&qu ...
- js jquery 判断IE有效方法
jquery1.9以前 $.browser.msie jquery1.9更高版本 $.browser.msie = /msie/.test(navigator.userAgent.toLowerCas ...
- 000 VS2013 c++ 框架
#include <Windows.h> //全局函数声明 LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, ...
- 转Oracle字符集问题总结
Oracle字符集问题总结 分类: Oracle2006-06-04 13:48 1298人阅读 评论(3) 收藏 举报 oracle数据库sqlcharacter存储insert 作者: vston ...
- python关于字典的使用方法
#-*- coding:utf-8 -*-#Author:gxli#定义字典id_db={ 233333199211222342:{ 'name':'xiaoa', 'age':23, 'addr': ...
- Android -- 资源使用和总结经验分享
颜色资源 颜色XML文件格式 ...