【雑談】静的結合とポリモーフィズム

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
h2so5
副管理人
記事: 2212
登録日時: 9年前
住所: 東京
連絡を取る:

【雑談】静的結合とポリモーフィズム

#1

投稿記事 by h2so5 » 7年前

ポリモーフィズムに関する説明を読むと、ポリモーフィズムは動的結合によって実現されると書かれている場合があります。
最近読んだ問題集の解説にもそのようなことが書いてありました。
(※ どちらも動的結合がポリモーフィズムの実現手段の一つであるという書き方ではなく、動的結合でないと実現できない、という表現がなされています)

しかし、実際は静的結合によるものもポリモーフィズムと呼んでいる説明もあります。
この場合「動的結合によって実現される」という説明が間違っているのか、それとも「ポリモーフィズム」の意味の取り方が違うのかどちらでしょうか。
教義狭義のポリモーフィズム?)

「IT用語辞典バイナリ」では動的結合によって実現されると書かれている
http://www.weblio.jp/content/%E3%83%9D% ... A%E3%83%A0

「Wikipedia 日本語版」では動的結合・静的結合については書かれていない
http://ja.wikipedia.org/wiki/%E3%83%9D% ... A%E3%83%A0

「Wikipedia 英語版」では
オーバーロードによる "Ad-hoc polymorphism"
オーバーライドによる "Subtype polymorphism"
(C++における) テンプレートによる "Parametric polymorphism"
が説明されている。
http://en.wikipedia.org/wiki/Polymorphi ... science%29

「ニコニコ大百科」ではポリモーフィズムの例として静的結合のみが挙げられている
http://dic.nicovideo.jp/a/%E3%83%9D%E3% ... A%E3%83%A0

ISLe
記事: 2645
登録日時: 9年前
連絡を取る:

Re: 【雑談】静的結合とポリモーフィズム

#2

投稿記事 by ISLe » 7年前

IT用語辞典バイナリだけが実装方法まで詳しく言及しようとして自爆しているように見えます。

実行時評価型でメソッドを注入できる言語は文法的に他の言語と大きく異なりますし、そういう言語はとうぜん動的結合ですが、本質的には動的結合か静的結合かは関係無いと思います。

Suikaba
記事: 194
登録日時: 9年前

Re: 【雑談】静的結合とポリモーフィズム

#3

投稿記事 by Suikaba » 7年前

僕も動的結合でも静的結合でもpolymorphismという言葉は使いますね。
ISLeさんと同様、関係ないと思います。

【追記】
一応探してみたら、こういう記述もありました。
In computer languages polymorphism has come to mean the ability to manipulate different types through a common interface.

アバター
h2so5
副管理人
記事: 2212
登録日時: 9年前
住所: 東京
連絡を取る:

Re: 【雑談】静的結合とポリモーフィズム

#4

投稿記事 by h2so5 » 7年前

ISLe さん, Suikaba さん ありがとうございました。

ポリモーフィズムはかなり抽象的な概念ですから、具体的な実装まで指定しているのはやはりおかしいですよね。

閉鎖

“C言語何でも質問掲示板” へ戻る