我想我会失明,因为我无法揣摩出的语法错误是在此代码:我可以在Objective-C switch语句中声明变量吗?
if(cell == nil) {
titledCell = [ [ [ TitledCell alloc ] initWithFrame:CGRectZero
reuseIdentifier:CellIdentifier ] autorelease
];
switch(cellNumber) {
case 1:
NSString *viewDataKey = @"Name";
etc...
当我尝试编译它,我发现了一个错误:语法错误在最后一行'*'标记之前。
对不起,这是一个基本的问题,但我错过了什么?
什么样的变量是cellNumber? switch语句来自C语言,因此使用Objective-C类型可以将其启动。 – 2009-07-12 04:29:02
C只支持`switch/case`类似于整数的对象,如果这是个问题,我期望得到一个不同的错误信息。 – ephemient 2009-07-12 04:32:44
Objective-C是否遵循C99(和C++)并允许您在任何地方声明变量,或者只能在块的开始处这样做?如果你不得不在块的开始处声明它们,那么你可以在case'1'的``:''和匹配的'`}之后加一个``{`'来修正你的语法错误。 “在案件结束之前。 – 2009-07-12 04:35:45