0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【備忘録】Swift 実践入門について 第8章

Last updated at Posted at 2020-12-09

Swift 実践入門のまとめ。
分からない部分の抜粋も記載し、解決できたら随時更新していきます。
なお、ここに記載している以外でも「わけわからん…」となっている部分も多々ありますが、
今は必要ない、と言い聞かせて飛ばしています。

第8章
型の種類 struct / class / enumそれぞれの特徴
理解度:70%くらいか

前提として、ほとんどの場合でstructを使う。
structとclassの違いは、structでは変数に値を受け渡す場合、この値のコピーとして代入される。
したがってvar a = “abc”, var b = “def”でa = bと代入し、bの値を後で変更したとしても
a = “abc”のままである。
逆にclassではbの変更に合わせてaも同じく変更される。
またclassでは継承を使うことができる点もstructとは異なる。

8-3 構造体
以下構造体の中身。
struct SomeStruct {
var a : Int
let b : String  //型の定義まで
init (a : Int, b : String) {
self.a = a
self.b = b   //ここで初期化
}
func printA() {
print(a)
}
}
let c = SomeStruct (a : 123, b : “abc”)
c.PrintA()   //123

8-4 クラス
上記の構造体にプラスして、継承があるためoverride、super、finalなどが登場する。
finalはfinal funcで再定義を禁止し、final classで継承を禁止する。
継承で初期化の場合、2段階の初期化が必要になりinit (a : Int)のところをinit(a : a)などになることがある。

8-5 列挙型
enumとcaseを使って定義する。バラバラにある食べ物を例えば「お菓子」「肉類」「魚類」など種類に分けて列挙する。そうすることで可読性が高まる。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?