クラス自体にプロパティを定義する方法だよ。
これにはstaticを使うよ。
Swiftでクラスプロパティ(タイププロパティ)を定義する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
class Kazu { static var count = 0 func plus() { Kazu.count += 1 } func minus() { Kazu.count -= 1 } } let kazu1 = Kazu() kazu1.plus() kazu1.plus() print(Kazu.count) // 2 let kazu2 = Kazu() kazu2.minus() kazu2.minus() print(Kazu.count) // 0 |
ここでは Kazuクラスのcountプロパティなので
kazu1, kazu2の2つのインスタンスを作っても、Kazu.countの値は一つなので、2つめの出力結果が-2ではなく0になるよ。