- Swift part9 [無断転載禁止]©2ch.net
891 :デフォルトの名無しさん (アウアウエー Sa4a-C9ZD)[sage]:2017/02/15(水) 15:40:42.82 ID:nbc++MSva - >>890
上で話してるstatic変数は、クラス変数とはちょっと違う C言語の関数内static変数のことで、性質的にはクラス変数に近いけど基本的にその関数内でしかアクセスできない C言語由来のC++やObj-Cのメソッド内にも定義できる
|
- Swift part9 [無断転載禁止]©2ch.net
893 :デフォルトの名無しさん (アウアウエー Sa4a-C9ZD)[sage]:2017/02/15(水) 16:13:28.40 ID:nbc++MSva - >>892
状況って改まって言われてもあれだけど、クラスの属性とするほどもない一時的な値を保持しときたい時とかかなぁ 例えば整数の並びを読み込みながら、直前に読み込んだ値との差を表示する処理があったとして、 func printDiffernce() { static var prevValue: Int if let curValue = self.getNextValue() { print("difference = ¥(curValue - prevValue)") prevValue = curValue } else { prevValue = 0 } } みたいな書き方ができれば便利じゃね? 個人的にSwiftにはスクリプト言語的な手軽さも期待してるんで、やっつけ仕事とかだと重宝すると思うんだけどね
|
- Swift part9 [無断転載禁止]©2ch.net
896 :デフォルトの名無しさん (アウアウエー Sa4a-C9ZD)[sage]:2017/02/15(水) 18:26:07.27 ID:nbc++MSva - >>895
一番お手軽な代替だけと無理やり感は否めないね 自分もそこまでやるなら素直にインスタンス変数使うわ
|