Re: Mehrfachvererbung (was: Defekt in der Sprache? || Serializable-Interface realisieren)
Von: Bodo Thiesen (bothie@gmx.de) [Profil]
Datum: 21.12.2008 21:45
Message-ID: <gim9th$2u0$03$2@news.t-online.com>
Newsgroup: de.comp.lang.iso-c++
Datum: 21.12.2008 21:45
Message-ID: <gim9th$2u0$03$2@news.t-online.com>
Newsgroup: de.comp.lang.iso-c++
* "Helge Kruse" <Helge.Kruse-nospam@gmx.net> hat geschrieben: >> "Bodo Thiesen" <bothie@gmx.de> wrote in message > >> In welchem Fall braucht man eine Basisklasse, die mehrmals vererbt >> wird, tatsächlich doppelt? Mir fällt einfach kein Beispiel ein , bei >> dem man das braucht, und es nicht mit einem einfachen Member lösbar >> ist. > Deine Klasse Jeopardy gehört zu einem GUI System, die das Handle f ür > das GUI Objekt hält. Ok. Dann gehe ich aber davon aus, daß abgeleitete Objekte davon ledigl ich komplexere GUI-Objekte werden. > Es ist wohl einleuchtend, dass hier für jeden > Derivator ein eigenes Handle gemeint sein soll. Die Klasse Jeopardy > definiert eine Methode "virtual void OnClick(Jeopardy&)" die bei einem > entsprechenden Ereignis aufgerufen wird. Durch Überschreiben der > Methode in DoubleJeopardy erhält das Objekt die Benachrichtigung à ¼ber > jedes Ereignis. Ok, also: Ich gehe davon aus, DJ ist bei Dir jetzt z.B. eine Dialog-Box. Dann wäre bei mir das ganze aber nur einmal von J abgeleitet (dort kom mt dann das Fensterhandle oder whatever rein) und DJ besitzt einen Haufen von Members vom Typ J bzw. von diesem abgeleiteten Typen (z.B. Button, Inputboxes, die alle für sich genommen von J abgeleitet sind). > Wenn die Derivatoren als Member eingebunden sind, erhälst Du kein > Benachrichtugung in DoubleJeopardy. Richtig, dafür müsste man dann eine Hook-Funktion anbieten. Aller dings: Wie sollte OnClick in Deinem Fall aufgerufen werden? DJ * dj=...; dl->OnClick(dj); würde es ja schonmal nicht tun - der Aufrufer mü sste wissen, womit er es zu tun hat - dann kann er aber genausogut eine entsprechend spezialisiertere Funktion benutzen. Ich denke aber sowieso, daß die OnClick-Methode eher von Lowlevel-Seite getriggert wird. Also, ich gebe Dir jetzt noch eine Chance, mir das Beispiel zu erkläre n, vielleicht verstehe ich es ja beim zweiten mal - aber so bringt mir das zum Verständnis garnichts. (Versuche dabei mal etwas konkreter zu werd en.) Gruß, Bodo[ Auf dieses Posting antworten ]
Antworten
- Stefan Reuther (22.12.2008 16:50)
- Helge Kruse (22.12.2008 20:33)
