On Jan 22, 2013, at 10:23 AM, Dave wrote:

> 
> On 21 Jan 2013, at 18:44, Steve Sisak wrote:
> 
>> At 6:14 PM +0000 1/21/13, Dave wrote:
>>> if (class_RespondsToSelector(myClass,@selector(initWithManager:) == NO)
>>>     myObj = [[myClass alloc] init];
>>> else
>>>     myObj = [[myClass alloc] initWithManager:sel]];
>>> 
>>> I get a warning on the initWithManager: statement (Obviously), how to avoid 
>>> the warning or otherwise fix it?
>> 
>> You could try declaring initWithManager: in a category on the class visible 
>> only to your implementation code. (i.e. at the top of your .m file)
> 
> The class name is passed in as a string and the class is formed from that, so 
> I can't pre-declare it. Please see my other reply.


If in fact myClass may be any number of classes that may implement certain 
methods, the "right" way to do this is using a protocol. Protocols are designed 
to fit this purpose. I don't recall, however, the exact method to hint to the 
compiler enough to avoid the warning. Importing the protocol header may be 
sufficient.

HTH,

Keary Suska
Esoteritech, Inc.
"Demystifying technology for your home or business"


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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 arch...@mail-archive.com

Reply via email to