Публикации по теме 'double-dispatch'


Двойная отправка в Ruby с уточнениями
Двойная отправка в Ruby с уточнениями Уточнения - это относительно новая функция Ruby. Они действительно классные, но на момент написания я не мог найти ничего интересного из того, что с ними делали люди, поэтому вот вам предложение: Вещь, которой, по-видимому, не хватает Ruby, - это простой и сдержанный способ реализации двойной диспетчеризации. Это неудивительно, поддержка двойной отправки не является распространенной в языках с утиным типом, но уточнения могут нам помочь. Они..

Прощай, геттеры и сеттеры - Часть II
Итак, в моей предыдущей статье мы увидели, как мы можем сохранить инкапсуляцию - один из самых фундаментальных принципов объектно-ориентированного дизайна (OOD) - «поместив поведение там, где находятся данные». Но теперь, когда мы действительно начинаем использовать эти красиво инкапсулированные объекты, мы сталкиваемся с проблемой, которая кажется проблемой, и нам, в конце концов, потребуется доступ к тем свойствам, которые мы так аккуратно инкапсулировали. Почему? Что ж, мы хотим..

Вопросы по теме 'double-dispatch'

c ++ двойная отправка с зеркальными иерархиями
следующие иерархии классов представляют абстрактные обработчики ресурсов и иерархии ресурсов. Оба имеют интерфейсы как базовые классы. Теперь представьте, что вы пишете систему, в которой вы можете реализовать несколько конкретных систем ресурсов...
453 просмотров
schedule 07.04.2023

Перегрузка метода Java + двойная диспетчеризация
Кто-нибудь может подробно объяснить, почему перегруженный метод print(Parent parent) вызывается при работе с экземпляром Child в моем тестовом фрагменте кода? Какие-либо особенности виртуальных методов или перегрузки/разрешения методов в Java...
4884 просмотров
schedule 01.03.2023

Как работает двойная отправка в шаблоне «Посетитель»?
Я изучал другие вопросы, связанные с шаблоном посетителя, но не мог понять реализацию двойной отправки в шаблоне посетителя. Перейдите по ссылке Шаблон посетителя . Как работает двойная отправка в шаблоне «Посетитель»?
11436 просмотров

Реализация двойной диспетчеризации в C#, расширяемая как для функций, так и для объектов, с которыми можно работать.
Я ищу способ реализовать двойную отправку, которую можно расширить как для методов, так и для классов. До сих пор я использовал в основном три подхода: традиционный процедурный подход с отличным switch (легко добавлять новые функции, сложно...
686 просмотров

шаблонная двойная диспетчеризация с использованием указателей на функции
Я пытаюсь создать собственный механизм столкновений для академических целей и застрял на общей проблеме программирования на C ++. У меня уже есть вся геометрия, которая работает правильно, и тест на столкновение также работает правильно. Движок...
261 просмотров

Двойная диспетчеризация и универсальность Java
Мне нужно расширить алгоритм, который широко использует шаблон двойной отправки. Этот алгоритм манипулирует некоторыми разными классами данных (множеством классов), и для каждого класса требуется одно и то же расширение. Я не хочу изменять ни...
517 просмотров
schedule 08.05.2023

Как я могу реализовать двойную отправку, если я заранее не знаю всех классов?
У меня есть базовый класс с (потенциально) множеством подклассов, и я хотел бы иметь возможность сравнивать любые два объекта базового класса на предмет равенства. Я пытаюсь сделать это, не вызывая кощунственное ключевое слово typeid. #include...
607 просмотров