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