【发布时间】:2011-05-21 04:42:58
【问题描述】:
我是编程新手。我看过这段代码。将派生类对象返回给基类。 这样基类就可以指向派生类的方法。 这里 B 类中的静态函数将其对象返回到基 类。
base-derivedclass.m
#import <Foundation/Foundation.h>
#import "B.h"
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
[B p];
[pool drain];
return 0;
}
啊.h
#import <Foundation/Foundation.h>
@interface A : NSObject {
}
@end
上午
#import "A.h"
@implementation A
@end
B.h
#import <Foundation/Foundation.h>
#import "A.h"
@interface B : A {
}
+(A*)p;
-(void)display;
@end
B.m
#import "B.h"
@implementation B
+(A*)p
{
NSLog(@"returning derived class object to the base class!!");
return [B new];
}
-(void)display
{
NSLog(@"Hello");
}
@end
【问题讨论】:
标签: objective-c