Hi Peter-

For the declared property "protoCell", automatic synthesis is going to make an 
instance variable named "_protoCell".  You can then refer to it in an instance 
method as either:

1.  _protoCell - direct ivar access.
2.  self.protoCell - access through the getter.

The reference to protoCell alone is neither of the above, and you'll get the 
warning.  I seem to recall that best practice in an init method is to directly 
access the ivar.

HTH!

John

On Sep 12, 2013, at 3:45 PM, Peter Teeson <[email protected]> wrote:

> Xcode 4.6.2 Lion 10.7.5
> Programming with Objective-C seems to indicate I can do this:
> #import <Cocoa/Cocoa.h>
> #import "Cell.h"  //My sub-class
> 
> @interface Document : NSDocument
> @property Cell *protoCell;
> @end
> 
> and  this (i.e. no need to @synthesize):
> 
> @implementation Document
> - (id)init
> {
>    self = [super init];
>    if (self) {
>        protoCell = [[Cell alloc]init];
>        // Add your subclass-specific initialization here.
>    }
>    return self;
> }
> ……
> @end
> 
> but the compiler tells me
> Use of undeclared identifier 'protoCell'; did you mean '_protoCell'?
> 
> If I do refer to the ivar using the internal reserved form _protoCell 
> the compiler is happy.
> 
> What is my lack of understanding? Why am I not allowed to use
> the getter protoCell as indicated in the documentation?
> 
> TIA
> 
> Peter
> _______________________________________________
> 
> 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:
> https://lists.apple.com/mailman/options/cocoa-dev/john%40positivespinmedia.com
> 
> This email sent to [email protected]


_______________________________________________

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

This email sent to [email protected]

Reply via email to