ich möchte gern ein Interface I als abstrakte Basisklasse (ABC) definieren, das neben ein paar Methodendeklarationen auch signals beinhaltet. Dazu muss I von QObject erben, weil QObject ja die Grundlage für signals und slots ist (und connect auch nur zwei QObjects miteinander verbinden kann).
Desweiteren gibt es eine Basisklasse A, von der zwei Subklassen B und C erben. B und C bauen auf der Funktionalität von A auf und sollen zusätzlich I implementieren.
Das Problem ist, dass sowohl A als auch I von QObject erben müssen, der Compiler beschwert sich dann bei B und C, dass man nicht zweimal von QObject erben kann.
Also das ganze nochmal als Übersicht:
Code: Alles auswählen
class I: public QObject; // abstrakte Basisklasse
class A: public QObject; // Basisklasse
class B: public A, public I; // eine Klasse, die I implementieren soll
class C: public A, public I; // eine weitere Klasse, die I implementieren soll
Vielen Dank,
Micha.