8/31/08 2:34 AM, also sprach [EMAIL PROTECTED]:

> NSMutableDictionary * myCollection;
> myCollection = [[NSArray alloc] initWithObjects:@"a", @"b", @"c", nil];
> 
> The types are not the same. So my first question is, is this a bug?
> And if so, why didn't the compiler catch it? I come from C# so unless
> NSMutableDictionary inherits NSArray this logic would not compile.

Yes, it is a "bug". Because the return type of -initWithObjects is "id",
which can represent any object, the compiler can't know that the types are
incompatible.

IIRC, you should get a compiler warning if you call a method that only
NSArray implements, such as -objectAtIndex:, on the myCollection object.

HTH,

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


_______________________________________________

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to