Designfrage: Diamond-Problem umgehen?
-
Hallo liebe C++-Community,
ich stehe gerade vor einer kleinen Designfrage.Ich habe eine Klasse Light, die wiederum die Basis für Point- und Directional-Lights bietet.
Also erben diese beiden jeweils von Light.
Der Typ Spotlight hingegen vereint die Eigenschaften eines Point- und Directional-Lights, weswegen ich ihn von beiden erben lasse.
Offensichtlicherweise steht man hierbei vor dem Diamond-Problem.Soll ich virtuelle Basisklassen verwenden oder mein Design überdenken, wenn ja, wie?