On Jan 9, 2009, at 1:49 AM, nik heger wrote:

- (id)initWithLabel:(NSString *)label pin:(NSString *)pin seed: (NSString *)seed {
        if (self = [super init]) {
                self.label = label; ///<----------- compiler complains
                self.pin = pin;
                self.seed = seed;
        }
        return self;    
}

I get three warnings that say "local declaration of x overrides instance variables. I thought I could differentiate between the parameters and the instance variables using self.variable vs just variable.

The ambiguity isn't on the left side of the assignment. That is clear enough with the dot syntax. The problem is on the right side, where a plain, unadorned "label" could be an attempt to reference the parameter or the instance variable.

Dot syntax is one way of accessing your properties, but not the only way. The lack of dot syntax doesn't make an identifier fail to match an instance variable.

Regards,
Ken

_______________________________________________

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

This email sent to arch...@mail-archive.com

Reply via email to