Ich glaube, ich werde blind, weil ich nicht herausfinden kann, wo der Syntaxfehler in diesem Code ist:Kann ich Variablen innerhalb einer Objective-C-Switch-Anweisung deklarieren?
if(cell == nil) {
titledCell = [ [ [ TitledCell alloc ] initWithFrame:CGRectZero
reuseIdentifier:CellIdentifier ] autorelease
];
switch(cellNumber) {
case 1:
NSString *viewDataKey = @"Name";
etc...
Wenn ich versuche, es zu kompilieren, erhalte ich ein Fehler: Syntaxfehler vor '*' Token in der letzten Zeile.
Sorry für so eine grundlegende Frage, aber was vermisse ich?
Welche Variable Zellzahl? Die switch-Anweisung stammt von C, daher kann die Verwendung von Objective-C-Typen den Fehler auslösen. –
C unterstützt nur integral-ähnliche Objekte für 'switch/case', und ich würde eine andere Fehlermeldung erwarten, wenn das hier das Problem wäre. – ephemient
Verfolgt Objective-C C99 (und C++) und ermöglicht es Ihnen, Variablen an beliebiger Stelle zu deklarieren, oder können Sie dies nur zu Beginn eines Blocks tun?Wenn Sie gezwungen sind, sie am Anfang eines Blocks zu deklarieren, können Sie Ihren Syntaxfehler beheben, indem Sie ein '' '' nach dem '':'' von '' case 1: ''und ein passendes''} ''vor dem Ende des Falles. –