Реализации алгоритмов/Мультиметод: различия между версиями
Содержимое удалено Содержимое добавлено
РоманСузи (обсуждение | вклад) дополнение |
Oleg4280 (обсуждение | вклад) ссылки на Википедию |
||
Строка 3:
== Common Lisp ==
В языке с поддержкой мультиметодов, таком, как [[w:Common Lisp|Common Lisp]], код выглядел бы вот так:
<source lang="Lisp">
Строка 70:
}
</source>
В данном случае, естественно, следует отличать мультиметоды от [[w:перегрузка функций|статической перегрузки]], так как, в отличие от последней, диспетчеризация происходит в [[w:Runtime|рантайме]].
В [[w:Объектно-ориентированное программирование|объектно-ориентированных]] языках, не поддерживающих синтаксис мультиметодов, множественную диспетчеризацию можно реализовать посредством виртуальных методов.
|