[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Alloc/dealloc etiquette
From: |
Sherm Pendley |
Subject: |
Re: Alloc/dealloc etiquette |
Date: |
Sat, 17 Feb 2007 17:50:38 -0500 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (darwin) |
David Phillip Oster <oster@ieee.org> writes:
> In article <oster-C482BB.11543417022007@newsclstr02.news.prodigy.com>,
> David Phillip Oster <oster@ieee.org> wrote:
>
>> In article <m2vei1wc52.fsf@local.wv-www.com>,
>> Sherm Pendley <spamtrap@dot-app.org> wrote:
>>
>> > - (void)setFoo:(NSObject *)value {
>> > if (foo != value) {
>> > [foo release];
>> > foo = [value copy];
>> > }
>> > }
>
> Apologies. I was assuming a matching:
>
> - (NSObject *)foo{
> return foo;
> }
>
> But, if you always write:
>
> - (NSObject *)foo{
> return [[foo copy] autorelease];
> }
>
> then my "swap" criticism doesn't apply.
The example setter I posted was generated by Xcode, and it does indeed
generate a getter to match, although using -retain rather than -copy.
I should have posted both generated methods to avoid the confusion.
Sorry!
> However, I often want access to
> an object's part, not a transient copy of the part. (When I pull a
> puppet's string, connected to its finger, I expect the finger to move,
> not a copy of the finger, which is then immediately thrown away.)
Yeah, I'm a little skeptical of Apple's setters doing a -copy by default
also. It seems to run counter to the whole idea of shared ownership that
retain/release was designed to support in the first place.
sherm--
--
Web Hosting by West Virginians, for West Virginians: http://wv-www.net
Cocoa programming in Perl: http://camelbones.sourceforge.net
- Alloc/dealloc etiquette, Michael Hopkins, 2007/02/17
- Re: Alloc/dealloc etiquette, Michael Ash, 2007/02/17
- Re: Alloc/dealloc etiquette, Sherm Pendley, 2007/02/17
- Re: Alloc/dealloc etiquette, David Phillip Oster, 2007/02/17
- Re: Alloc/dealloc etiquette, David Phillip Oster, 2007/02/17
- Re: Alloc/dealloc etiquette,
Sherm Pendley <=
- Re: Alloc/dealloc etiquette, Michael Ash, 2007/02/18
- Re: Alloc/dealloc etiquette, David Phillip Oster, 2007/02/19
- Re: Alloc/dealloc etiquette, Michael Ash, 2007/02/19
Re: Alloc/dealloc etiquette, Michael Hopkins, 2007/02/17
Re: Alloc/dealloc etiquette, Jens Ayton, 2007/02/19