Einige Probleme beim kompilieren ...



  • Servus,

    ich habe hier leider ein paar Probleme beim kompilieren meiner Library unter VC++ 7.1 😞

    Ich fang erstmal mit dem ersten Problem an, ich will euch ja nicht abschrecken!

    Ich habe eine Datei "CRegion.h":

    #include "CRect.h"
    
    // ... Hier stehen weitere Dingen, die in dem Fall unwichtig sind!
    
    class CRegion
    {
    public:
      void setRectRegion(CRect Rect);
      void AttachWindow(CControl * Control);
    
      bool PtInRegion(CPoint Point);
      HRGN getRegion();
      ~CRegion();
    private:
      HRGN RgnHandle;
    };
    

    Die "CRect.h", die von "CRegion.h" eingebunden wird, sieht so aus:

    #ifndef __CRECT_H__
    #define __CRECT_H__
    
    class CRect
    {
    public:
      CRect();
      CRect(int X, int Y, int Width, int Height);
      int getX();
      int getY();
      int getWidth();
      int getHeight();
    
    private:
      int m_X, m_Y, m_Width, m_Height;
    };
    
    #endif // __CRECT_H__
    

    Wenn ich das kompiliere, bekomm ich folgenden Fehler:

    d:\Projekte\cYaLib\win32\CRegion.h(24) : error C2061: Syntaxfehler: Bezeichner 'CRect'
    
    class CRegion
    {
    public:
      void setRectRegion(CRect Rect);  // <-- verweißt auf diese Zeile
      void AttachWindow(CControl * Control);
    

    Eigentlich müsste CRect unter "CRegion.h" doch bekannt sein, oder?

    Könnt ihr helfen? Vielen Dank schoneinmal!



  • Dein Programm ist vollkommen in Ordnung und CRect ist in CRegion auch bekannt. Dein Problem müsste ein Folgefehler sein, wie vergessene Klammern zwischen #include "CRect.h" und class CRegion ...
    Wenn du noch mehr Fehlermeldungen erhältst, vielleicht kann man aus denen schlau werden. Unter Umständen kollidieren CRect oder __CRECT_H__ mit Compilervariablen.

    Grüße - Fux


Anmelden zum Antworten