精華區beta Programming 關於我們 聯絡資訊
※ 引述《xfuns (我一定要考上!!!!)》之銘言: : 在書上看到動態配置中有一段不太明白 : "動態配置是以動態的方法來決定程序呼叫與程序定義之繫結,此種功能亦稱 : 為多模(polymorphism)" : 我想知道它所說的"動態的方法"是指什麼? : 而多模,我印象中定義是說 : "一個變數可以以多種不同型態宣告在物件裡" (這定義可能不太正確,有錯請指正!!) : 這樣的話 請問動態配置和多模怎麼會扯上關係呢? : 多模的變數宣告亦是用動態的方法嗎? : 麻煩大家了 : 謝謝!! 我一開始也以為我看錯了@@ (polymorphism會和動態配置扯上關係?) 不過我仔細想了想 發現它所講的「動態配置」指的應該是「動態鏈結」 就像這樣:(C++) int foo(int a) { return a*2; } int foo(int a, int b) { return a*b; } int foo(char a) { return ((int)a)*3; } int main(void) { int a,b,c; char d; a=5; b=7; d=' '; c=foo(a); //這個會link到foo(int) 所以執行後c=10 (5*2) c=foo(a,b); //這個會link到foo(int,int) 所以執行後c=35 (5*7) c=foo(d); //這個會link到foo(char) 所以執行後c=96 (32*3) return 0; } 它指的就是這種根據參數型態及個數來決定要link到哪一個foo的機制 同樣的在物件的method中 也可以藉由參數個數不同而達成link到不同的同名函式 我個人認知的polymorphism就是以上這些機制(或曰特性?)的總稱 有錯還請指正m(_ _)m -- **** 說: 不要期望一個精神力差不多已經見底的人阿Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.84.44.21
godfat:這是靜態多形,一般指多形是指 OO 中的 dynamic binding 02/13 16:21
godfat:refer this:http://en.wikipedia.org/wiki/Dynamic_binding 02/13 16:27