Re: Keys of the kingdom
Re: Keys of the kingdom
- Subject: Re: Keys of the kingdom
- From: Ryan Britton <email@hidden>
- Date: Sat, 22 Apr 2006 17:44:48 -0700
Thanks. I hadn't even noticed that.
On Apr 22, 2006, at 4:32 PM, Shawn Erickson wrote:
On Apr 22, 2006, at 3:58 PM, Ryan Britton wrote:
const NSString *MSFileBackupDate = @"MSFileBackupDate";
The above says that "MSFileBackupDate" is a pointer to a constant
NSString instance. The problem with this definition is that the
'MSFileBackupDate" variable (the pointer) can be modified and hence
the object it points at could be changed. Normally you don't want
your keys to be changeable.
So it you should do one of the following...
1) NSString* const MSFileBackupDate = @"MSFileBackupDate";
2) const NSString* const MSFileBackupDate = @"MSFileBackupDate";
In (1) you have a immutable pointer to an NSString instance and in
(2) you have a immutable pointer to an immutable NSString instance.
The second option is generally redundant since NSString is by
definition immutable and since the NSString object is instantiated
using @"some string" you have a special variant of NSString that
not only is immutable but is also constant (not possible for it to
be deallocated, currently they are instances of CFConstantString
IIRC).
-Shawn
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden