演算子

記事数:(1)

開発

プログラミングにおけるオーバーロード:多義性を持つ処理

- 多くの役割を担う、オーバーロードプログラムの世界では、全く同じ名前を持ちながら、異なる処理を行う複数の関数を用意できる場合があります。これを「オーバーロード」と呼びます。この言葉は、もともと「過負荷」という意味を持ちますが、プログラミングの世界では、一つの名前に複数の機能を詰め込む、まるで「働き過ぎ」のような状態を指すと言えるでしょう。私たちの日常でも、一つの言葉が複数の意味を持つことはよくあります。「かける」という言葉が良い例です。「保険をかける」「鍵をかける」「時間を掛ける」など、状況に応じて全く異なる意味で使われますが、私たちは自然と使い分けています。プログラムにおいても、これは同様です。例えば、「合計を計算する」という処理を関数で表すとしましょう。数字の合計、文字列の結合など、様々な「合計」が考えられますが、それぞれの処理内容に応じて別の名前を付けるのは面倒です。そこで、オーバーロードの出番です。「合計」という同じ名前の関数を複数用意し、与えられるデータの種類や数に応じて適切な関数が自動的に選択されるようにすることで、簡潔で分かりやすいプログラムを実現できます。このように、オーバーロードは、まるで言葉に複数の意味を持たせるように、プログラムの表現力を豊かにするテクニックと言えるでしょう。