メソッドのオーバーロードです。
コードを見れば、何てことないんですけど、
メソッドを呼び出して使うときに、パラメータ(引数)を使用しますが、
そのメソッドが同じ結果をもたらすのに、
名前をいちいち変えていたら、開発をするひとも、どんな内容だったかわからなくなる。
そんなときこのオーバーロードの仕組みを使います。(よく使ってます。)
例えば
三角形の面積を算出するプロシージャを書くとして、
引数要素として、何が有るでしょうか。
・三点の座標値(座標法の計算)
・三辺の長さ(ヘロンの公式)
・2辺とその内角
・2角と1辺
ザッとこんな種類があります。
面積を出すってのは一緒なんですけど、
渡す引数が違うので・・・
と思うでしょうが、メソッド名は一つでいいわけです。
Function で Menseki というメソッドを作ったときに
上記
座標法ならば、X と Yの座標値(ポイント構造体でもいいと思いますけども)
ヘロンの公式ならば 三辺の距離(長さ)
・・・全部書きません。
それぞれにあった引数を使う時に意識せず
三角形の面積を出すことを想定してメソッドを作っておけば、
引数に応じたメソッドを実行してくれるので、とても便利です。
引数で渡される型が違った場合、違う処理をするだとか、
その場合は、変換する工程が入るだとか、
いろいろな場合に使用されますね。