Hi,
In Objective-C, is it possible to override a property and have it return a
different type to the base class?
I have a base class with the following property defined:
@property (nonatomic,retain) ClassA* propA;
and the following getter:
-(ClassA*) propA
{
return someValueOfClassA;
}
I’d like to override this in my subclass, as so:
-(ClassB*) propA
{
ClassA* myClassA;
ClassB* myClassB;
myClassA = super.propA;
myClassB = [[ClassB alloc] initWithClassA:myClassA]; //ClassB is a subclass of
Class A
return myClassB;
}
I can do this ok, but when I access the property:
// myClassA is already setup OK
ClassB* myClassB;
myClassB = myClassA.propA; //Warning on this line saying
return type is not ClassB
and I have to coerce the value to be ClassB to get rid of the warning. Is there
any way to avoid this?
Thanks a lot
Dave
_______________________________________________
Cocoa-dev mailing list ([email protected])
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to [email protected]