//
// main.m
// 块
//
// Created by wu jianhua on 16-8-3.
// Copyright (c) 2016年 wujianhua. All rights reserved.
//
#import <Foundation/Foundation.h>
//回调函数指针
typedef void (^CompletionBlock)();
@interface SampleClass:NSObject
- (void)performActionWithCompletion:(CompletionBlock)completionBlock;
- (NSNumber *) multiplyA:(NSNumber *)a withB:(NSNumber *)b;
@end
@implementation SampleClass
- (void)performActionWithCompletion:(CompletionBlock)completionBlock{
NSLog(@"Action Performed");
completionBlock();
NSLog(@"函数指针调用完成");
}
- (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b
{
float number1 = [a floatValue];
float number2 = [b floatValue];
float product = number1 * number2;
NSNumber *result = [NSNumber numberWithFloat:product];
return result;
}
@end
int main()
{
SampleClass *sampleClass = [[SampleClass alloc]init];
[sampleClass performActionWithCompletion:^{
NSLog(@"回调函数接口");
NSLog(@"Completion is called to intimate action is performed.");
}];
[sampleClass release];
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
SampleClass *sc = [[SampleClass alloc]init];
NSNumber *a = [NSNumber numberWithFloat:10.5];
NSNumber *b = [NSNumber numberWithFloat:10.0];
NSNumber *result = [sc multiplyA:a withB:b];
NSString *resultString = [result stringValue];
NSLog(@"The product is %@",resultString);
[pool drain];
return 0;
}
objective-c之回调函数和NSNumber
最新推荐文章于 2021-12-10 11:48:52 发布