• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: aborting init
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: aborting init


  • Subject: Re: aborting init
  • From: Michael Watson <email@hidden>
  • Date: Tue, 30 Nov 2010 02:09:09 -0800

On 29 Nov, 2010, at 19:27, Graham Cox wrote:

>
> On 30/11/2010, at 1:59 PM, Rainer Standke wrote:
>
>> The intended behavior is not to get anything if the conditions are not met.
>>
>>
>> Is this kosher? Do I have to do any kind of clean-up after doing something like that?
>
>
> Yes, it's OK to do this. As it's your own class, you can do what you like - typically you'd just document its behaviour (returns nil if x,y, and z are not met) if anyone else is likely to use it.
>
> The only thing to be concerned with is correct memory management, which just follows the usual rules.
>
> Returning nil, even unexpectedly, is usually 'safe' in that messages to nil are legal, and are either no-ops or return 0, so unlike C++, if you inadvertently send a message to nil, it doesn't crash.


>>  messages to nil are legal, and are either no-ops or return 0

this is not correct; there are more possibilities than 0 being returned. in most situations, sending a message to nil does indeed yield a return value of 0/nil. but that's not true all of the time:

"Sending Messages to nil"
<http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocObjectsClasses.html>

if these caveats are important to what you later choose to do with the result of a message sen to an object that may be nil, you may need to pay attention to whether said object is nil before bothering to use it.


--
michael

_______________________________________________

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

  • Follow-Ups:
    • Re: aborting init
      • From: Graham Cox <email@hidden>
References: 
 >aborting init (From: Rainer Standke <email@hidden>)
 >Re: aborting init (From: Graham Cox <email@hidden>)

  • Prev by Date: Re: NSTableColumn Binding Question
  • Next by Date: [ANN] LuaCocoa: A next-gen Lua/Objective-C bridge
  • Previous by thread: Re: aborting init
  • Next by thread: Re: aborting init
  • Index(es):
    • Date
    • Thread