error, weil klassenmember
-
hi,
ich versuche einen hook in eine klasse zu packen
und kriege folgenden error:error: argument of type `LRESULT (testklasse::)(int, WPARAM, LPARAM)' does not match `LRESULT (*)(int, WPARAM, LPARAM)'mir wurde empfohlen die funktion als static zu deklarieren,
das habe ich gemacht, dann habe ich allerdings keinen zugriff mehr auf die
variablen der klasse.meine frage:
wie kann man auf die variablen zugreifen oder
wie kann man den hook anders in eine klasse schreiben, also ohne static
-
Was soll der hook machen?
-
gar nich was soll das bringen
-
auf ein ereignis reagieren!
wie was soll das bringen?
sehr sinnvolle antworten...
-
die signatur der funktion innerhalb der klasse ist anders wegen dem this pointer und das weiss jedes drei jährige kinder. denk doch mal nach, man.
-
asdca schrieb:
die signatur der funktion innerhalb der klasse ist anders wegen dem this pointer und das weiss jedes drei jährige kinder. denk doch mal nach, man.
kein wunder das du unregistriert bist, bei deinem verhalten wärst du auch schon lang gesperrt...
wenn du mir nicht antworten kannst, dann lasses bitte einfach und müll nicht den thread zu
-
was willst du ich hab dir geantwortet. wenn du die antwort ned checkst, lass die finer von hooks lol...ich liebe die leute die sich von nem c progger wie mir die grundlagen von c++ erklären lassen müssen, mit hooks rumpantschen und sich dann wundern wenn am ende nur schrott rauskommt, gib dir erstmal ne runde das hier

C++ für Kids | ISBN: 3826607430
-
ich habe deine antwort verstanden, die frage ist deswegen trotzdem noch nicht beantwortet, ich weiß jetzt nur WARUM mein compiler den error ausibt, habe aber keine lösung dafür...
-
Lasst Phenex nicht im Regen stehen! Er will auf Ereignisse reagieren, wahrscheinlich Maus- oder Tastatureingaben. Dafür eignet sich "subclassing" sehr gut. Das ist aber besser nicht in einer Klasse zu realisieren.
-
danke! das nenn ich einen freundlichen umgangston.
ausserhalb der klasse funktioniert es schon wunderbar,
wieso eignet sich denn eine klasse nicht dafür?
nur wegen dem error hier?
-
Es ist ein unterschied ob Funktionszeiger auf freie bzw. statische Funktionen oder auf Member Funktionen zeigen.
Auf welchem Objekt soll den die Funktion aufgerufen werden?
Das ist die Frage, die beantwortet werden muss und dass geschieht, indem man nicht nur den Funktionszeiger, sonder auch das Objekt dazu angibt.Das ist bei Dir nicht möglich.
Simon