多重定義
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/02/21 13:38 UTC 版)
多重定義 (たじゅうていぎ) あるいは オーバーロード (英: overload) とは、プログラミング言語において同一の名前(シンボル)を持つ関数あるいはメソッドおよび同一の演算子記号について複数定義し、利用時にプログラムの文脈に応じて選択することで複数の動作を行わせる仕組みである。 例えば整数型や浮動小数点型、複素数型の値について同じ「abs」という関数を定義して絶対値を求める、型ごとに個々の意味で名前やIDを返す関数を定義するなどが挙げられる。多重定義する対象に応じてそれぞれ関数の多重定義[注釈 1]、演算子の多重定義[注釈 2]、メソッドの多重定義[注釈 3]と呼ばれる。メソッドの多重定義の特殊なケースとして、コンストラクタの多重定義がある。また、Common Lispなどでは、多重定義可能な関数としてgeneric function(en:Generic function)がある(このgenericはジェネリックプログラミングのジェネリックである)。
注釈
出典
- ^ std::hypot - cppreference.com
- ^ a b http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4296.pdf
- ^ http://www.j3-fortran.org/doc/year/10/10-007.pdf
- ^ “オーバーロード”. 言語リファレンス. The PHP Group. 2014年4月16日閲覧。
- 1 多重定義とは
- 2 多重定義の概要
- 3 演算子の多重定義
- 4 曖昧な型を持つ言語
固有名詞の分類
- 多重定義のページへのリンク