Ich sah mir die verwandten Fragen an und konnte nichts finden, was genau das anspricht, worüber ich gesprochen habe, also lass mich das beschreiben.In Qt, wie verwende ich Q_OBJECT Slots und Signale mit Mehrfachvererbung?
Ich habe eine Klasse, sagen wir Foo, die ihre eigenen Slots und Signale haben muss, aber auch von QXmlDefaultHandler erben muss (klingt ziemlich seltsam, aber ich habe diese Situation beim Versuch, QHttp zu verwenden, um eine Website direkt zu lesen ein QBuffer).
Dieser Code wird, wenn er von einem cpp begleitet wird, um bar mit einem Signal woanders zu verbinden, nicht kompiliert. Sie erhalten Fehler über einige Mitglieder von QObject, die kein Mitglied von QXmlDefaultHandler sind. Außerdem können Sie Q_OBJECT nicht verschieben oder Sie erhalten Vtable-Fehler, wenn Sie einige Dinge nicht implementieren (weitermachen! Versuchen Sie es!).
siehe meine Antwort für die (sehr einfache) Lösung. Ich werde Sie als akzeptierte Antwort wählen, wenn ich denke, Sie erklären es besser als ich.
bearbeiten: für Sie C++ und Qt Tierärzte, bitte posten Sie eine Antwort, wenn Sie es besser erklären können. Ich habe ziemlich viel Zeit damit verbracht, diese Informationen zu lesen, also bitte hilf jemand anderem, wenn du es besser kannst als ich.