多重定義とは何? わかりやすく解説 Weblio辞書

多重定義とは? わかりやすく解説

オーバーロード

別名:多重定義
【英】overload

オーバーロードとは、「引数戻り値異なるが名称が同一メソッド複数定義する」というオブジェクト指向プログラミングテクニックである。

オーバーロードでは、引数の型が異な同名メソッドをあらかじめ複数定義しておくことで、メソッド呼び出される時の引数戻り値の型などに応じて適切なメソッド呼び出すことができ、呼び出す際のチェックメソッド内部での不要な条件分岐などを減らすことが可能になる

このテクニック利用することでメソッド名の煩雑化や似て非なるメソッド名の大量記述を防ぐことができるが、同一名称ゆえに多用しすぎると機能理解し辛いメソッド生む危険性孕む

オーバーロードの本質は「引数戻り値個々振る舞い異なるが、振る舞い本質は同様」の場合メソッドコンストラクタに対して適用するべきであり、「引数の型が異なるだけで振る舞いは同様」の場合メソッドをオーバーロードしても混乱の元となりやすい。

プログラミングのほかの用語一覧
コーディング:  インクリメント演算子  インラインコード  オーバーフロー  オーバーロード  打ち切り誤差  配列  バグ

多重定義

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/02/21 13:38 UTC 版)

多重定義 (たじゅうていぎ) あるいは オーバーロード (: overload) とは、プログラミング言語において同一の名前(シンボル)を持つ関数あるいはメソッドおよび同一の演算子記号について複数定義し、利用時にプログラムの文脈に応じて選択することで複数の動作を行わせる仕組みである。 例えば整数型浮動小数点型複素数型の値について同じ「abs」という関数を定義して絶対値を求める、ごとに個々の意味で名前やIDを返す関数を定義するなどが挙げられる。多重定義する対象に応じてそれぞれ関数の多重定義[注釈 1]、演算子の多重定義[注釈 2]、メソッドの多重定義[注釈 3]と呼ばれる。メソッドの多重定義の特殊なケースとして、コンストラクタの多重定義がある。また、Common Lispなどでは、多重定義可能な関数としてgeneric function(en:Generic function)がある(このgenericはジェネリックプログラミングのジェネリックである)。


注釈

  1. ^ : function overloading
  2. ^ : operator overloading
  3. ^ : method overloding
  4. ^ : method overriding
  5. ^ : implicit type conversion
  6. ^ : type coercion
  7. ^ : inheritance
  8. ^ : inclusion
  9. ^ : generic type
  10. ^ : parametric type
  11. ^ : polymorphism

出典

  1. ^ std::hypot - cppreference.com
  2. ^ a b http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4296.pdf
  3. ^ http://www.j3-fortran.org/doc/year/10/10-007.pdf
  4. ^ オーバーロード”. 言語リファレンス. The PHP Group. 2014年4月16日閲覧。


「多重定義」の続きの解説一覧

多重定義

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/19 18:29 UTC 版)

メソッド (計算機科学)」の記事における「多重定義」の解説

詳細は「多重定義」を参照 引数の数、型、順序などが異なる同じ名前のメソッド定義することをメソッドの多重定義といい、多くオブジェクト指向言語ではメソッドコンストラクタを多重定義できる機能を持つ。オーバーロード (overload) とも呼ばれるが、オーバーライドとの混同注意が必要である。 ただし、PHPPerlのように、プログラミング言語によっては、型の曖昧さ原因によりメソッドを多重定義できないものもある。この場合メソッド引数メソッド先頭読み取り引数の型を判定する条件分岐対応する

※この「多重定義」の解説は、「メソッド (計算機科学)」の解説の一部です。
「多重定義」を含む「メソッド (計算機科学)」の記事については、「メソッド (計算機科学)」の概要を参照ください。

ウィキペディア小見出し辞書の「多重定義」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「多重定義」の関連用語

多重定義のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



多重定義のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリオーバーロードの記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの多重定義 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのメソッド (計算機科学) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS