Suchergebnisse
Suchergebnisse 1-7 von insgesamt 7.
@Helmut Nach dem Umstellen der Projekteinstellungen funktioniert deine Lösung, soweit ich das bis jetzt getestet habe, bestens. Dankeschön!
@dot: Ich programmiere erst seit knapp einem Jahr in C++, und das nur nebenbei, und kann deshalb noch nicht wirklich in C++ gute von schlechten Lösungen unterscheiden. Ich habe bisher aber festgestellt, dass Funktionszeiger in Pascal deutlich einfacher zu handhaben sind, da man den Zeiger, wie gesagt, auf jede beliebige Funktion mit entsprechenden Parametern setzen kann. @Helmut: Leider kennt mein Compiler "std::placeholders" nicht, ich benutze Code::Blocks mit dem GNU GCC Compiler, beides in de...
Das Überschreiben der Funktion möchte ich eben nicht, da ich den Zeiger auch auf Funktionen setzen können möchte, die außerhalb der Klasse definiert sind. Im Sinne der Objektorientierung macht es in meinen Augen am meisten Sinn, wenn ein Event, das beim Klicken eines Buttons ausgelöst wird, auch durch den Button zu seiner Ereignisfunktion findet. Es macht wiederum wenig Sinn, die Ereignismethode direkt in der jeweiligen Buttonklasse zum definieren, da man dann, wie gesagt, jede Komponentenklasse...
Überschriebene Funktionen finde ich an dieser Stelle wenig sinnig, da man mit Funktionszeigern für ein komplettes Fenster nur eine Klasse überschreiben müsste, bei überschriebenen Funktionen müsste man sämtliche Klassen überschreiben, also jeden Button etc.. Das Konzept mit den Funktionszeigern habe ich bei der o.g. VCL kennengelernt und habe es dort als einfach und vorteilhaft kennengelernt.
Ich arbeite gerade daran, die Windowsfensterkomponenten in eigene Klassen zu packen, um diese einfacher handhaben zu können (Bsp./Vorbild Borlands VCL). Für die Ereignisverarbeitung möchte ich Funktionszeiger verwenden: C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 //allgemeine Fensterklasse class CForm { public: ... //Ereignisfunktionszeiger void (CForm::*pOnKeyPress) (WPARAM); ... } //Beispielfenster class CMyForm : public CForm { private: ... //Funktion, auf die verwe...
Danke für die schnelle Antwort, jetzt läufts Ich hatte nicht erwartet, das Delphi 5 (von 199 das doppelte Einbinden verhindert, VS2013 aber nicht
Ich bin recht neu in C++ und arbeite jetzt an meinem ersten größeren Projekt, einer kleinen Spriteengine. Bevor ich mit C++ angefangen habe, habe ich hauptsächlich in pascal programmiert. Nun zu meinem Problem: Ich binde eine selbst geschriebene Datei ein, in der ein struct definiert und einige Funktionen deklariert werden. Visual Studio 2013 zeigt mir im Editor auch keine Fehler an, compiliere ich das Projekt aber, erscheinen Compilerfehler, wie : "error C2027: Verwendung des undefinierten Typs...