Problem beim übergeben eines Objektes an eine Funktion (By reference)



  • Hallo liebe C++ Gemeinde.
    Ich brauche mal wieder eure Hilfe Ich habe Ein kleines Problem beim übergeben eines Objektes an eine Funktion einer Anderen Klasse. (Ich denke mal ich sehe einfach den Wald vor lauter Bäumen nicht mehr^^)

    Zum Problem:
    In der Headerdatei von devRead kriege ich den Fehler das calcValue nicht deklariert wäre. (bei dem Objekt von devConfig geht die übergab auf selbe weise ohne Probleme)
    Code Auszüge:
    Ich lege in der Main die benötigten Objekte an:

    int main (){	
           . 
           . 
           .        
              devConfig *dconf; /*Pointer auf ein Array. 
                                Hier liegen die Objekte von dconf drin*/
    	  calcValue cvalue;
              devRead dread;
           . 
           . 
           .
              dconf = new devConfig[bconf.getDevAnz()]; /* Hir wird das array 
                                                         wird initalisiert*/
           . 
           . 
           .
    }
    

    Dann Rufe ich aus dread die Funktion readValue auf und übergebe ihr ein Objekt devConfig[i] und eins von CalcValue.

    error=dread.readValue(dconf[i], &cvalue);
    

    Die Headerdatei von devread sieht wie folgt aus:

    class devRead {
    public:
    	devRead();
    	devRead(const devRead& dRead);
            .
    /*Hier bekomme ich vom Compiler die Fehlermeldung das calcValue nicht Deklariert wäre. Wenn ich clacValue Raus nehme dann geht es*/
    	.
             int readValue(devConfig&, calcValue&); 
    
    private:
           .
           .
    
    };
    

    und zuletzt noch die Funktion selber:

    #include <iostream>
    #include "devRead.h"
    #include "calcValue.h"
    }
    
    int devRead::readValue (devConfig& dConf, calcValue& cvalue)
    {
          .
          . 
          .
          return();
    }
    

    Ich hoffe Ihr seht den Fehler den ich da eingebaut habe^^ und könnt mir Helfen.
    Mfg BabCom



  • Woher soll denn innerhalb des Headers von devRead die Klasse calcValue bekannt sein? Probiers doch mal mit einer Forward-Deklaration.



  • Danke das werde ich gleich mal ausprobieren.
    Allerdings stellt sich mir dann die Frage wieso er, wenn es daran liegt, Dann die Ref auf defConfig erkennt?

    Mfg BabCom


Anmelden zum Antworten