Home > iPhone SDK / Cocoa / Objective-C | 開発ツール/開発手法 > switch/caseの中で変数を宣言する

switch/caseの中で変数を宣言する

switch (hoge) {
  case 0:
    int i;
    break;
}

上記のように case の中で変数を宣言すると、

syntax error before ‘int’

というように怒られるのが謎だったのですが、これはスコープの問題だそうですね。

以下のように、スコープを case の中に限定してやれば良いようです。なるほど。今までは、if/else で代用したり、switch の外で宣言したりしてごまかしていたので助かりました。UITableView では switch/case が大活躍です(良いコードとは言えませんが……)。

switch (hoge) {
  case 0: {
    int i;
  }
  break;
}

参考:二流プログラマの三流な日常: switch文の途中で宣言する

関連する投稿

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://iphone-dev.ensites.net/archives/474/trackback
Listed below are links to weblogs that reference
switch/caseの中で変数を宣言する from iPhoneアプリ開発ブログ

Home > iPhone SDK / Cocoa / Objective-C | 開発ツール/開発手法 > switch/caseの中で変数を宣言する

Search
Feeds
Meta

Return to page top