Swift

swift4: associated valueを持つenumのswitchについて


どうもささおです。

associated valueを持つenumとswitchを組み合わせて使うことってよくありますよね!

 

ふいに書き方を忘れてしまうことがあるのでメモしていきます。

 

〜〜〜associated valueとパターンマッチング〜〜〜

注目していただきたいのはここです。

.red()の引数(引数と言っていいのか??)に”#EE0000″を入れて定数redの”#FF0000″と比較しています。

 

ここでん??と思うことがあります。

引数名書いてないけどいいの??というところです。

このように書く必要があるのではないか??ということです。

ちなみにどっちでも動きます。

 

〜〜〜associated valueと定数〜〜〜

注目していただきたいのはこちらです。

ここでは.red()の引数でlet codeで定数を定義している。

定数codeには

での”#FF0000″が入っています。

これをcase{ }内で定数codeを使用することができます、

 

 

まとめ

associated valueを「パターンマッチング」に使ったときも

「引数で定数を定義」するときも

引数内に書きますが、

何を書くかで全く違うものになるので注意が必要です。

 


コメントを残す

*