Header Problem



  • ich habe ein Problem und zwar:
    ich habe ein Klassen Header x.h in dem steht sowas:

    #include "MainForm.h"
    #include <vcl.h>
    
    //---------------------------------------------------------------------------
    class TProfibus
    {
    public:
           int __fastcall SendData(PPO1, PPO2);
    

    Die Typen PPO1 und PPO2 sind typedef struct als public in der Datei MainForm.h deklariert, so erkennt der Compiler den Typ nicht und wenn ich schreibe TMain_Frm::PPO1 funktionierts auch nicht, der Compiler sagt dann, TMain_Frm sei keine Klasse oder struktur aber das ist ganz sicher die Klasse welche in MainForm.h deklariert ist. TMain_Frm ist der Name der Klasse in welchen PPO1 und PPO2 deklariert sind. Könnt ihr mir evt. da weiter helfen? Danke!
    😕



  • Gegenfrage: Wieso deklarierst du die Struktur als Member deines Forms obwohl es eigentlich zu was ganz anderem als zum Form gehört? (Rein logisch gesehen)



  • junix schrieb:

    Gegenfrage: Wieso deklarierst du die Struktur als Member deines Forms obwohl es eigentlich zu was ganz anderem als zum Form gehört? (Rein logisch gesehen)

    Okay, jetzt hab' ich den typedef zum test einfach mal unten an der Klasse im header angehängt, aber der Compiler kennt den typ PPO1 und PPO2 immernoch nicht... 😞



  • Hilfeeeeeeee *nachobenschieb* Bitte versucht mir zu helfen. Danke!



  • Drängeln führt hier höchstens zur Hilfeverweigerung. Solange dein Thread noch auf der ersten Seite steht, gibts keinen Grund ihn nach oben zu schieben.

    Vielleicht mail MainForm.h nach vcl.h includen.

    -junix



  • junix schrieb:

    Drängeln führt hier höchstens zur Hilfeverweigerung. Solange dein Thread noch auf der ersten Seite steht, gibts keinen Grund ihn nach oben zu schieben.

    Vielleicht mail MainForm.h nach vcl.h includen.

    -junix

    ja, sorry... 😞 tud mir leid... ähm, wenn ich in MainForm.h einfach #include <vcl.h> schreibe, gibts das selbe ergebniss... 😞



  • Wo hast Du den typedef hingelegt, innerhalb der Klasse ? Dann setzt das doch mal vor die Klassendeklaration. Ansonsten zeig mal den Codeabschnitt mit dem typedef, ein wenig davor und danach auch.


Anmelden zum Antworten