IOS开发(59)之Block Object的调用

1 前言

本文将介绍如何函数调用Block Object以及Block Object调用Block Object。

2 代码实例

TestDemo.h

 

#import <Foundation/Foundation.h>

@interface TestDemo : NSObject

- (void) callSimpleBlock;
- (void) callTrimBlock;
@end

 

TestDemo.m

 

#import "TestDemo.h"

@implementation TestDemo


/*************** 方法调用Block Object Start ***************/
void (^simpleBlock)(NSString *) = ^(NSString *paramString){
    /* Implement the block object here and use the paramString parameter */
    NSLog(@"%@",paramString);
};
- (void) callSimpleBlock{
    simpleBlock(@"Archy");
}
/*************** 方法调用Block Object End ***************/

/*************** Block Object调用Block Object Start ***************/
NSString *(^trimString)(NSString *) = ^(NSString *inputString){
    NSString *result = [inputString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
    return result;
};
                        
NSString *(^trimWithOtherBlock)(NSString *) = ^(NSString *inputString){
        return trimString(inputString);
};
- (void) callTrimBlock{
        NSString *trimmedString = trimWithOtherBlock(@" Archy ");
        NSLog(@"Trimmed string = %@", trimmedString);
}
/*************** Block Object调用Block Object Start ***************/

@end

 

main.m

 

int main(int argc, const char * argv[])
{

    @autoreleasepool {
        
        TestDemo *test = [[TestDemo alloc] init];
//        [test callSimpleBlock];
        [test callTrimBlock];
    }
    return 0;
}

 

运行结果

 

2013-05-10 06:53:50.893 CallBlockObjectTest[591:303] Trimmed string = Archy

3 结语

以上就是所有内容,希望对大家有所帮助。

Demo下载:http://download.csdn.net/detail/u010013695/5351963

你可能感兴趣的:(object)