2016-05-15 10 views
-3

編集済み 私はかなり迅速です。Swiftでは、新しい変数を作成して列挙型に設定するのはなぜですか?

struct PersonMovement { 
    enum Arms: Int { 
    case Bent 
    case Straight 

    func moreBent() -> Arms { 
     return Arms(bentDegree: rawValue - 1) ?? .Straight 
    .... 
    } 
    enum Legs: Int { 
    case Bent 
    case.... 
    } 
    enum Head: Int { 
    .... 
    } 

    var arms: Arms 
    var legs: Legs 
    var head: Head 
} 

変数armslegsheadを使用する別の迅速なファイルがあります:私は、次のコードを理解しようとしています。なぜ私はそれらの別々の変数が最初に作成されたのだろうかと思っています。なぜ、他の迅速なファイルが列挙子Arms,LegsおよびHeadを指しているのではないでしょうか。

なぜなら、列挙型を使用するには、列挙型の値で別の変数を作成する必要があるからですか?それはネストされており、グローバルにアクセスできないためですか?ここでも、私はここで初心者です。申し訳ありませんが明確ではありません。私の2回目の投稿もここに掲載されています。お詫び

+0

あなたの質問が何であるかは完全にはわかりませんが、enumはネストされた型なので、 'PersonMovement.Arms'などでアクセスできます。もしそれらをグローバルスコープにしたい場合は、グローバルスコープで(構造体から移​​動する) – Hamish

+1

1つは型定義であり、1つは実際の変数です。なぜあなたはすでにそのクラスを持っている場合、あなたはクラスのインスタンスを作成する必要がありますか? – luk2302

+0

ああ、そのネストされている場合は、それは内部列挙型かプライベート列挙型ですか? – BossGiveMeArrays

答えて

0

私はあなたの質問を正しく理解している場合は、変数をタイプと混合しています。

あなたが列挙型でArmsLegsHead種類をインスタンス変数のを定義します。

これらのインスタンスは、次いで、例えば、異なる列挙値を定義することができる。

armsBent又はStraightのいずれかであり得ます。

関連する問題