我似乎用这个小小的iPhone应用产生了很多问题……
我正在尝试用NSStrings填充一个NSMutableArray,我是这样工作的:
...
NSString *myStr = [[NSString alloc] initWithString:@"Jupiter II"];
[txtArray addObject: myStr];
[myStr release];
NSString *myStr = [[NSString alloc] initWithString:@"Could this be OUR Waffles?"];
// in this second block, the line above generates the error: 'Redefinition of myStr'. Why?
[txtArray addObject: myStr];
[myStr release];
...第一个块不会生成错误,但是后续的块(每个string对象的内容都相同)都会生成错误“Redefinition of myStr”。为什么?
我知道这将是一个面部涂抹,但我只想知道,并超越它!
任何和所有的帮助,汉克斯!
致以亲切的问候,
史蒂夫·奥沙利文
发布于 2010-08-21 02:48:59
只需从第二个块中删除NSString*即可:
NSString *myStr = [[NSString alloc] initWithString:@"Jupiter II"];
[txtArray addObject: myStr];
[myStr release];
myStr = [[NSString alloc] ...每次编写类似NSString *myStr的代码时,都会声明新的变量-并且变量名在相同的作用域中必须不同。但是您可以重用相同的变量来存储不同的对象-就像您在上面的代码中所做的那样
发布于 2010-08-21 02:55:28
也许只是为了举例,但您的前三行代码可以替换为:
[txtArray addObject:@"Jupiter II"]此外,创建字符串数组非常简单,如下所示:
[NSArray arrayWithObjects:@"Jupiter II",
@"Could this be OUR Waffles",
nil];https://stackoverflow.com/questions/3533886
复制相似问题