1

我有一个方法,现在只需要NSLog调用:

(void)methodName:(NSString*)name {
    NSLog(@"hey there, %@", name);
}

它说“ Local declaration of 'name' hides instance variable”。这是什么意思?如何构造我想要的字符串?

4

3 回答 3

3

只需重命名参数:

-(void)methodName:(NSString*)nameParam {
   NSLog(@"hey there, %@", nameParam);
}
于 2012-04-20T18:06:15.833 回答
3

这意味着您的类中已经有一个名为“name”的变量,其中包含 methodName 方法。您可能希望将其更改为如下所示:

- (void)methodName:(NSString*)theName {
    NSLog(@"hey there, %@", theName);
}
于 2012-04-20T18:06:53.150 回答
1

您必须将其name用作属性或变量。在方法中使用它作为参数名称是使用它两次。

将方法参数的名称更改为其他名称。

于 2012-04-20T18:06:29.793 回答