Funktion soll Pointer auf struct oder class zurückgeben



  • Hi,

    was mach' ich hier falsch? Wieso meldet der BCB4-Compiler einen E2141-Fehler?

    CPP-Datei:

    char* TForm1::GetChar(void) // funktioniert (logisch eigentlich)
    {
      return cChar;
    }
    
    BLA* TForm1::GetBla(void) // [C++ Fehler] Unit1.cpp(24): E2141 Fehler in der Deklarationssyntax.
    {
      return pBla;
    }
    
    BLUBB* TForm1::GetBlubb(void) // [C++ Fehler] Unit1.cpp(30): E2141 Fehler in der Deklarationssyntax.
    {
      return pBlubb;
    }
    
    LABER* TForm1::GetLaber(void) // [C++ Fehler] Unit1.cpp(36): E2141 Fehler in der Deklarationssyntax.
    {
      return pLaber;
    }
    

    H-Datei:

    // Variablendeklarationen
    
      struct BLA
      {
        BLA *pNext;
        int nXyz;
      };
    
      typedef
        struct _BLUBB
        {
          struct _BLUBB *pNext;
          int nXyz;
        }
        BLUBB;
    
      class LABER
      {
      public:
        LABER *pNext;
        int nXyz;
      };
    
      BLA *pBla;
      BLUBB *pBlubb;
      LABER *pLaber;
      char *cChar;
    
      // Funktionsdeklarationen
    
      char* GetChar(void);
      BLA* GetBla(void);
      BLUBB* GetBlubb(void);
      LABER* GetLaber(void);
    

    Gruß,
    Stefan



  • Nachtrag: Das klappt:

    void* TForm1::GetBla(void)
    {
      return (BLA*)pBla;
    }
    

    Verwirrt,
    Stef😕n


Anmelden zum Antworten