- Swift part2
189 :デフォルトの名無しさん[sage]:2014/06/21(土) 04:53:39.17 ID:qifWmRUG - functionの引数でexternal nameとlocal nameが設定できるけど別々の名前にするメリットって何ですか?
| - Swift part2
190 :デフォルトの名無しさん[sage]:2014/06/21(土) 05:59:44.67 ID:qifWmRUG - このサンプルコードを見てなんとなく使い所が分かりました
struct Point { var x = 0.0, y = 0.0 mutating func moveByX(deltaX: Double, y deltaY: Double) { x += deltaX y += deltaY } } var somePoint = Point(x: 1.0, y: 1.0) somePoint.moveByX(2.0, y: 3.0) でもこれなら個人的には func moveByX(x: Double, y: Double) { self.x += x self.y += y } って書く方がすっきりしてる様に思いました。好みですかね?
| - Swift part2
195 :デフォルトの名無しさん[sage]:2014/06/21(土) 21:00:36.35 ID:qifWmRUG - >>192
こう書けたら分かりやすかったのにと思います。 struct Point { var x = 0.0, y = 0.0 mutating func moveBy(x: Double, y: Double) { self.x += x self.y += y } } var somePoint = Point(x: 1.0, y: 1.0) somePoint.moveBy(x: 2.0, y: 3.0) 実際は以下のようにxの方だけ#を付けないとエラーが出てしまいます。 func moveBy(#x: Double, y: Double) 1つ目の引数だけ扱いが違うのがちょっとややこしいです。 もしくは例に挙げてもらったこれ func moveBy(x deltaX: Double ,y deltaY: Double) 手間は少し増えるけどミスは減りそうです。
| - Swift part2
197 :デフォルトの名無しさん[sage]:2014/06/21(土) 21:03:55.24 ID:qifWmRUG - 結局、メリットは分かりやすくなるって事ですね。
|
|