Bin in eine "Zwickmühle" geraten



  • Hi,
    hab ein schwerwiegendes Problem mit meinem Programm, welches
    ich seit seinem halben Jahr entwickle:
    Einmal habe ich einen Header der mir API's hookt(api.h), und
    einen zweiten indem ich alle "interessanten" Funktionen habe(functions.h),
    nun hooke ich in dem ersten header(api.h) eine API, und möchte die
    rückgabewerte in einem "handler"(functions.h) auswerten lassen, der dann die
    entsprechenden Funktionen aufruft. Das Problem ist nun, dass sich der
    Handler in dem Funktion-Header (functions.h) befinden muss, weil er da massig Funktionen benutzt die sonst nicht definiert sind...
    Leider ist dieser handler dann ja nicht definiert weil api.h vor functions.h included wurde... wenn ich die reihenfolge ändere kriege ich so c.a. 300Fehler weil meine funktionen sowieso die gehookten API's benutzen...

    Dieses Problem scheint nicht zu lösen zu sein außer ich hooke die API
    auf einen Pointer der erst nachher auf meine Funktion umgeschrieben wird.

    Danke schonmal für euren Rat,
    wenn ihr etwas nicht versteht fragt nach

    EDIT:HABS SELBST GESCHAFFT:
    Man musste einfach im api.h die funktion vordefinieren und alles klappt
    wunderbar 😃



  • Du hast da eher ein Strukturproblem: Für Klassen-Methoden (die nicht inline definiert sind, und auch keiner Template-Klasse angehören) und Funktionen gilt (in der Regel):
    Deklaration: Header-Datei(*.h, .hpp)
    Definition: Quellcodedatei (
    .c, *.cpp)


Anmelden zum Antworten