ブログ
 

【Swift】引数ラベルとは

       

引数ラベルとは

引数ラベルとは、メソッドの呼び出し側につけるラベルのことで、引数をよりわかりやすく説明することができます。関数ラベルとも言われますが、本記事では引数ラベルという名前で記載しています。

メソッドのパラメータ名と引数ラベルが同名の場合

下記、例では三角形の面積を計算し、結果を返すメソッドを引数ラベルを付けて呼び出しています。

// 呼び出し元
// 三角形の面積 = (底辺 × 高さ) ÷ 2
func triangle(base: double, height: double) {

 return (base * height) / 2.0

}

// 呼び出し側
// teihenとtakasaが引数ラベル
triangle(base: 100, height: 200)
このように、メソッドの呼び出し側の引数値の前にラベルを付与することで、100は底辺の値で200は高さの値であることが、
呼び出し元を確認しなくてもわかります。

メソッドのパラメータ名と引数ラベルが別名の場合

先ほどの例では、メソッドのパラメータ名(base、height)と引数ラベルが同じ名前で設定されていましたが、
別名で設定することも可能です。
// 呼び出し元
// 三角形の面積 = (底辺 × 高さ) ÷ 2
// bsとhtを付ける
func triangle(bs base: double, ht height: double) {

 return (base * height) / 2.0

}

// 呼び出し側
// bsとhtが引数ラベル
triangle(bs: 100, ht: 200)

呼び出し元のパラメータ名の前に、引数ラベルで使用したい名前を追加します。その追加した名前を呼び出し側で使用することができます。

引数ラベルを省略する場合

引数ラベルは省略することも可能です。
省略方法は、呼び出し元メソッドのパラメータ名前にアンダースコアを付与します。これだけで、呼び出し側では値だけを引数に入れることでメソッドを呼び出すことができるようになります。

// 呼び出し元
// 三角形の面積 = (底辺 × 高さ) ÷ 2
// アンダースコア(_)を付ける
func triangle(_ base: double, _ height: double) {

 return (base * height) / 2.0

}

// 呼び出し側
triangle(100, 200)

しかし、上記の呼び出し側だけ見ると100、200の値が何を示しているか不明です。このプログラムを作成した私は底辺と高さの値を入れれば良いとわかりますが、基本的に一人でコーディングすることは少ないと思います。ですので、このように値を直接引数に記述する場合は、引数ラベルを使用することで可読性がグンと上がります。

Swiftにはこのようなちょっとした便利な機能がたくさんあるので、是非調べてみてください!

 
  • このエントリーをはてなブックマークに追加