Re: How to avoid warning?
Re: How to avoid warning?
- Subject: Re: How to avoid warning?
- From: Dave <email@hidden>
- Date: Tue, 22 Jan 2013 17:23:12 +0000
That's wont help because myClass is a variable created from a String.
as in:
-void methodXXX:(NSString*) theClassName
myClass = NSClassFromString(theClassName);
if (myClass == nil)
return;
myObj = [[myClass alloc] initWithManager:self]];
}
To whoever said write better code that has types defined, this code
is fine. You can't know the Class here which is why I'm checking to
see if the Class supports the selector first. I could use
performSelector but not sure how that would work with the alloc method:
myObj = [[myClass alloc] performSelector(@selector
("initWithManager:") withObject:self];
Would this work?
Cheers
Dave
On 21 Jan 2013, at 18:42, Quincey Morris wrote:
On Jan 21, 2013, at 10:14 , Dave <email@hidden> wrote:
myObj = [[myClass alloc] initWithManager:sel]];
I get a warning on the initWithManager: statement (Obviously), how
to avoid the warning or otherwise fix it?
You need to #import a header file with an @interface declaration
for the 'initWithManager:' method.
The rule is that when the compiler sees a message send to a
receiver of type 'id' (which is the return type of 'alloc'), it
needs to have seen *some* declaration of that method. If it has
seen more than one declaration, BTW, the declarations must all be
compatible in terms of parameter and return types.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden