Multiple Dispathc 與 Polymorphism的概念
2020/04/20 下午 10:06
Julia程式語言討論版
Tie
觀看數:2
回答數:1
收藏數:1
day016
如題,有看過杜老師的IT邦幫忙的解說,想請問這樣的理解是對的嗎?
然後有提到Multiple Dispatch是動態的,也就是執行時間判斷。
而function overloading則是compile時觸發。
兩者的差別在於語言本身的性質,是compile語言還是interpreter語言,這樣的理解是對的嗎?
先謝謝您的回復~~~
回答列表
-
2020/04/21 上午 10:46杜岳華贊同數:0不贊同數:0留言數:0
Polymorphism 是更為廣義的概念,而其中包含 single dispatch 及 multiple dispatch 的實作方式。
Single dispatch 及 multiple dispatch 屬於 runtime 的行為,而 function overloading 則屬於 compile time 的行為,但與 compiler 或 interpreter 無關,他與編譯或是執行時期有關。
也就是,compiler 也可以有 runtime,也可以設計 dispatch 的行為。