V2EX  ›  英汉词典
Enqueued related words: Dynamic Dispatch

Ad Hoc Polymorphism

释义 Definition

ad hoc polymorphism(特设多态):在编程语言中,通过为不同类型分别提供不同实现来实现“同名操作”的多态性。最常见的形式是函数/运算符重载(overloading),以及在某些语言中通过类型类(type classes)或类似机制实现的按类型选择实现。
(注:多态还有其他常见类型,如参数多态 parametric polymorphism、子类型多态 subtype polymorphism。)

发音 Pronunciation (IPA)

/ˌæd ˈhɑːk ˌpɑːlɪˈmɔːrfɪzəm/

例句 Examples

Ad hoc polymorphism lets the same function name work for different types.
特设多态让同一个函数名可以适用于不同的类型。

In many languages, operator overloading is a form of ad hoc polymorphism, because “+” may behave differently for integers and for strings.
在许多语言中,运算符重载是一种特设多态,因为“+”对整数和对字符串的行为可能不同。

词源 Etymology

ad hoc 源自拉丁语,意为“为此、专门针对某个目的”;polymorphism 来自希腊语词根 *poly-*(多)+ morph(形态)+ -ism(名词后缀),合起来就是“多种形态”。“ad hoc polymorphism”字面含义是“为特定情况而定制的多态”:同一个操作在不同类型下以不同“形态/实现”出现。

相关词 Related Words

文学/经典作品中的用例 Literary Works

  • Types and Programming Languages(Benjamin C. Pierce)——在类型系统与多态分类讨论中常涉及“ad hoc polymorphism”等概念。
  • The C++ Programming Language(Bjarne Stroustrup)——讨论函数/运算符重载时与“特设多态”的思想高度相关。
  • Programming in Haskell(Graham Hutton)——讲解类型类(type classes)时常将其视为实现特设多态的一种方式。
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   968 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 17:27 · PVG 01:27 · LAX 09:27 · JFK 12:27
♥ Do have faith in what you're doing.