Сообщение Re[5]: Чем заменить виртуальные функции? от 14.07.2023 16:32
Изменено 17.07.2023 5:34 zelenprog
Re[5]: Чем заменить виртуальные функции?
G>>https://www.wikiwand.com/en/Composition_over_inheritance
bnk>А можно еще чуть подробнее (с учетом, что абстрактных классов, делегатов и интерфейсов, тоже, видимо, нет)?
Да, абстрактных классов и интерфейсов нету.
Но без них можно обойтись, так как строгой типизации нету. Это скриптовый язык.
Будет просто переменная, в которой хранится ссылка (указатель) на конечный объект.
А делегат — это же просто шаблон проектирования. Делегат наверно в моей среде можно сделать.
bnk>А можно еще чуть подробнее (с учетом, что абстрактных классов, делегатов и интерфейсов, тоже, видимо, нет)?
Да, абстрактных классов и интерфейсов нету.
Но без них можно обойтись, так как строгой типизации нету. Это скриптовый язык.
Будет просто переменная, в которой хранится ссылка (указатель) на конечный объект.
А делегат — это же просто шаблон проектирования. Делегат наверно в моей среде можно сделать.
Re[5]: Чем заменить виртуальные функции?
G>>https://www.wikiwand.com/en/Composition_over_inheritance
bnk>А можно еще чуть подробнее (с учетом, что абстрактных классов, делегатов и интерфейсов, тоже, видимо, нет)?
Да, абстрактных классов и интерфейсов нету.
Но без них можно обойтись, так как строгой типизации нету. Это скриптовый язык.
Будет просто переменная, в которой хранится ссылка (указатель) на объект типа "базовый".
Точнее, эта "переменная" — это this. То есть в методе базового класса через this вызывается виртуальная функция. Нужно чтобы произошел вызов "реальной" переопределенной в потомке функции.
А делегат — это же просто шаблон проектирования. Делегат наверно в моей среде можно сделать.
bnk>А можно еще чуть подробнее (с учетом, что абстрактных классов, делегатов и интерфейсов, тоже, видимо, нет)?
Да, абстрактных классов и интерфейсов нету.
Но без них можно обойтись, так как строгой типизации нету. Это скриптовый язык.
Будет просто переменная, в которой хранится ссылка (указатель) на объект типа "базовый".
Точнее, эта "переменная" — это this. То есть в методе базового класса через this вызывается виртуальная функция. Нужно чтобы произошел вызов "реальной" переопределенной в потомке функции.
А делегат — это же просто шаблон проектирования. Делегат наверно в моей среде можно сделать.