iOS Block 写法详解

//
//  ViewController.m
//  test_block_1
//
//  Created by admin on 3/28/16.
//  Copyright © 2016 jeffasd. All rights reserved.
//

#import "ViewController.h"

typedef void(^TestBlock)(int);

typedef int(^TestAddBlock)(int, int);



@interface ViewController ()

@property (nonatomic, copy)void (^addBlockResult)(BOOL) ;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    NSLog(@"111");
    
    _addBlockResult = ^(BOOL isSuccess){
        
        NSLog(@" isSuccess is %@", [NSNumber numberWithBool:isSuccess]);
        
    };
    
    _addBlockResult(YES);
    
    TestBlock testBlock = ^(int a){
        
        NSLog(@"333");
        NSLog(@"the test a is %d", a);
        
    };

    
    NSLog(@"222");
    
    testBlock(3);
    
    void (^ maxBlock)(int, int) = ^(int x, int y){
    
    };
    
    maxBlock(1, 2);
    
    int (^ minBlock)(int, int) = ^(int x, int y){
        
        return x;
    };
    
    minBlock(1, 2);
    
    [self testBlockResult:^(int x) {
        
    }];
    
    [self testBlockResult1:^(int y) {
        
    }];
    
}

- (void)testBlockResult:(TestBlock) testBlock{
    
}

- (void)testBlockResult1:( void (^)(int )) myBlock
{
    
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

你可能感兴趣的:(iOS_OC)