我想我會失明,因爲我無法揣摩出的語法錯誤是在此代碼:我可以在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