2015-10-13 17 views
6

これは、私が他の言語/ IDEでも見たように、これは完全にSwift/Xcodeのことではないと思います。switch文の中の 'case'がインデントされていないのはなぜですか?

switch文の中の 'case'が負の字下げで表示されているのはなぜですか(これは正しい言い回しであるかどうかわかりません)

I switch文は、この

switch(type) { 
    case 1: 
     // do something 
    break; 
    case 2: 
     // do something else 
    break; 
    default: 
     // default 
    break; 
} 

のようなものを見て期待しかし、Xcodeは、この

switch(type) { 
case 1: 
    // do something 
    break; 
case 2: 
    // do something else 
    break; 
default: 
    // default 
    break; 
} 

を主張し、これはバグですか、その理由は何ですか?もしそうなら、それは何ですか?それはかなりの時間私を悩ませている何かです。

+0

おかげ@BSMPをprefere)、私はそれを見ていません。 –

答えて

6

私は、break文がcase節の "section"に属していると思います。また、他のステートメントと同様に、caseと相対的にインデントされています。 switchに関連するcaseについては、よくわかりません。

私は完全にあなたと付き合っています。そして、フォーマットはとにかく個人的な好みの問題です。 - Xcodeでフォーマットルールが明示的に定義されていないので、それはバグではできません。

FWIW、私はこのスタイル

switch x { 
    case 1: 
     // do something 
     break 
    case 2: 
     // do something else 
     break 
    default: 
     // default 
     break 
} 
+0

ええ、私はこのスタイルも好きですが、Xcodeには大きな問題があります。これは、他のIDEと比較して機能面で数年遅れています。 – Sulthan

+3

ところで、Swiftでは、あなたは 'switch 'に' break'を必要としません。それは暗黙的です。転倒を強制したい場合には、「fallthrough」ステートメントがあります。 – BPCorp

+0

@BPCorpあなたは正しいです。しかし、ケース節には、少なくともSwiftの_one_文が必要です。 – CouchDeveloper

関連する問題