Как реализовать множественное наследование в Delphi?

Я полностью переписываю старую библиотеку, и я не уверен, как справиться с этой ситуацией (для понимания, все приветствуют аналогию с велосипедом):

У меня есть следующие классы:

TBike - the bike itself TBikeWheel - one of the bike's wheel TBikeWheelFront and TBikeWheelBack, both inherits from TBikeWheel and then implements the specific stuff they need on top of it

Это довольно просто, но теперь я решил создать несколько видов велосипедов, каждый из которых имеет свой собственный тип колеса - они делают то же самое, что и обычные передние / задние колеса, плюс специфические для этого велосипеда.

TBikeXYZ - inherits from TBike TBikeWheelXYZ - inherits from TBikeWheel

И вот моя проблема:TBikeWheelFrontXYZ должен наследовать отTBikeWheelXYZ (чтобы получить конкретные методы колеса XYZ), но оно также должно наследоваться отTBikeWheelFront (чтобы получить конкретные методы переднего колеса).

Мой вопрос здесь заключается в том, как я могу реализовать это так, чтобы это не делало:

feel like a hack force me to rewrite the same code several time

Ответы на вопрос(9)

Ваш ответ на вопрос