引数の別名と省略
引数の別名
関数の引数名は自由に付けることができます。しかし、引数に設定する値の意図がわかりやすい名前を心掛けるべきです。
次の関数の引数名に注目してみましょう。
1 2 3 4 |
// テストの点数を表示する関数 func showTestScore(score: Int) -> String { return "数学の点数は\(score)点" } |
「score」という引数名になっていますね。この引数は数学の点数を設定するようです。
このような関数を作成し、要所要所で呼び出したい、とします。
このとき、「数学の」点数を渡して呼び出して欲しい、ということをすぐにわかるようにしたいので、「mathematicsTestScore」という別名をつけたいと思います。
1 2 3 4 5 6 7 |
// テストの点数を表示する関数 func showTestScore(mathematicsTestScore score: Int) ->String { return "数学の点数は\(score)点" //関数の中では短いscoreの引数名を使える } // メソッド呼び出し showTestScore(mathematicsTestScore: 80)//呼び出す時は別名を使う |
関数 → func 関数名(引数の別名 引数名: 型) -> 戻り値の型
呼び出す時→ 関数名(引数の別名: 値)
このように記載することで、この関数を呼び出す時は「別名」のデータを渡してね、ということが関数の引数部分を見ただけでわかります。(呼び出す時の引数名はこの別名を使います。)
これは、Xcodeにあらかじめ用意された関数を使うときによく見かける書き方です。
今後レッスンを進めていく中で目にすることがあると思いますので、その時はこの「別名」の書き方を思い出してください。
引数名の省略
関数名から渡すべき値(引数)の内容が容易に推測できる場合は、引数を省略してしまっても構いません。
1 2 3 4 5 6 7 |
// 値を追加する関数。引数の別名部分はアンダースコア(アンダーバー) func addValue(_ value: Int){ // 処理省略 } // 関数呼び出し時は値だけを記述すればよい addValue(100) |
関数 →func 関数名(_ 引数名: 型) -> 戻り値の型
呼び出す時→ 関数名(値)
引数名が省略できる関数とそうでない関数が入り交じったプログラムは、書き手にとっても読み手にとって優しくないため、できるだけ記述方法は統一しましょう。