On Jul 18, 2012, at 1:27 AM, Uli Kusterer <witness.of.teacht...@gmx.net> wrote:
> On 18.07.2012, at 09:09, Lee Ann Rucker wrote: >> In init, and only when they need it. They're all initialized to nil, which >> is a perfectly reasonable value for an instvar to have; there's very rarely >> a reason to do anything like >> >> fly2never wrote: >>> name = [NSString string]; >> >> because sending a method to nil is perfectly safe, unlike C++. > > Ah! No! That's not a blanket guarantee! It is only valid for methods that > return void, integer types or pointers. If your method returns a struct and > you send it to NIL, you get garbage back. The restrictions have gotten a lot less severe lately: http://developer.apple.com/library/ios/documentation/cocoa/conceptual/objectivec/Chapters/ocObjectsClasses.html (see "Sending Messages to Nil") Floating-point-returning message to nil has been safe since 10.5, I believe. As of 10.7, struct-returning message to nil is also nil-safe if the return value fits in registers. --Kyle Sluder _______________________________________________ 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