iOS block示例_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > iOS block示例

iOS block示例

 2015/4/29 2:47:40  幻想无极  程序员俱乐部  我要评论(0)
  • 摘要:////block.h//Block////Createdbytqhon15/4/12.//Copyright(c)2015年tqh.Allrightsreserved.//#import<Foundation/Foundation.h>typedefvoid(^block1)(idobj);typedefvoid(^block2)();typedefNSInteger(^block3)();@interfaceblock:NSObject//带参数+(void
  • 标签:iOS
//
//  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 > 10) {
      block(str);
    }
}

+ (void)initBlock11:(block1)block sum:(NSInteger)sum{
    NSString *str = @"返回字符串";
    if (sum > 10) {
        block(str);
    }
}

+ (void)initBlick2:(void (^)())block sum:(NSInteger)sum{
 
    if (sum > 10) {
        block();
    }
    
}

+ (void)initBlock22:(block2)block sum:(NSInteger)sum{
  
    if (sum > 10) {
        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:9];
        
        [block initBlock11:^(id obj) {
            NSLog(@"%@",obj);
        } sum:11];
        
        [block initBlick2:^{
            NSLog(@"block2");
        } sum:9];
        
        [block initBlick2:^{
            NSLog(@"block22");
        } sum:11];
        
        
        [block blockTest:^{
            NSLog(@"100");
        }];
 
        [block initBlock3:^NSInteger{
            return 10000000;
        } sum:10];
    }
    return 0;
}

 

 
发表评论
用户名: 匿名