Praeprozessordef. wird auf einmal als unbekanntangesehen



  • Vorab: Ich schreibe das deswegen in dieses FOrum, da ich glaube das es Compilerspezifisch ist, kann es aber nicht auf anderen testen, da ich wxWindows verwende, und andere Compiler damit gar nicht klar kommen. Falls es doch kein Compilerproblem sein sollte, bitte verschieben.

    Also moin!

    ich nutze in einer Datei mehrere Praeprozessordefinitionen.
    Zum einen fuer Fensterid's zum anderen fuer Sprachen.
    Nun werden alle anderen Makros erkannt und wurden zeitweilig auf mal richtig umgesetzt (also es noch zu kompilieren ging.)

    [...]
    	AddMenuElement (m_pFileSaveAs, m, ID_MAINWND_MENU_FILE_SAVEAS, LANG_MAINWND_MENU_FILE_SAVEAS, LANG_MAINWND_MENU_FILE_SAVEAS_HELP) ;
    	AddMenuElement (m_pFilePrint,  m, ID_MAINWND_MENU_FILE_PRINT,  LANG_MAINWND_MENU_FILE_PRINT,  LANG_MAINWND_MENU_FILE_PRINT_HELP) ;
    	AddMenuElement (m_pFileClose,  m, ID_MAINWND_MENU_FILE_CLOSE,  LANG_MAINWND_MENU_FILE_CLOSE,  LANG_MAINWND_MENU_FILE_CLOSE_HELP) ;
    	m->AppendSeparator() ;
    	AddMenuElement (m_pFileExit,   m, ID_MAINWND_MENU_FILE_EXIT,   LANG_MAINWND_MENU_FILE_EXIT,   LANG_MAINWND_MENU_FILE_EXIT_HELP) ;
    	mb->Append (m, LANG_MAINWND_MENU_FILE) ;
    	#ifdef _DEBUG
    		m = new wxMenu() ;
    		m->AppendCheckItem (ID_MAINWND_MENU_DEBUG_SHOW, LANG_MAINWND_MENU_DEBUG_SHOW) ;
    		mb->Append (m, LANG_MAINWND_MENU_DEBUG) ;
    	#endif // _DEBUG
    [...]
    

    Und die beiden *_MAINWND_MENU_DEBUG_SHOW-Definitionen sind laut VC++ 6.0 "unbekannte Bezeichner. Alle anderen werden erkannt.

    Alle ID_* sind in einer Header (IDS.h), alle LANG_* sind in der Language.h
    Doe *_MAINWND_MENU_DEBUG_SHOW sind immer die letzten in der Definitionsliste, weswegen ich zum Elchtest die Definitonen einfach mal nach oben gestellt hab, selber Fehler.
    Ich hab auch die Namen der Def. mal um einiges kuerzer gemacht (man weiss ja nie), natuerlich immernoch keine Verbesserung.

    Der ganze Code funktioniert nur, wenn ich die ganzen Definitionen direkt in die CPP-Datei reinschreib (a la _inline 😃 ).

    Wo ist der Fehler?

    MfG Crock

    Ich hab, weil gestern b ereits mit einem Kollegen round about 3 Stundendaran rumgewerkelt hab, mal die Problemdatein angehaengt (Also die CPP, und die beiden Header).

    http://www.crocks-level.de/tst/Grapher.zip



  • *aehem*
    es ist mir ziemlich peinlich das hier so zu schreiben,
    aber ich habe an einer Headerdatei gearbeitet die gar nicht mitcompileirt wurde. es war ein falsches Verzeichnis 😕

    So, ich geh mich jetzt schaemen, bitte schliessen.


Anmelden zum Antworten