welchen Funktionsparameter brauche ich?



  • hier die Klasse Klartext:

    [cpp]
    class Klartext
    {
          public:
                  Klartext(const char *dName) : Dateiname(dName) 
                  {
                         liste = new Liste<char>;
                         KT.open(Dateiname, ios::in | ios::binary);
                         while(!KT.eof())
                               liste->AddElement(KT.get());
                  }
                  ~Klartext(){KT.close();delete liste;}
                  Liste<char> *liste;
    
          private:
                  Klartext(const Klartext&);
                  fstream KT;
                  const char *Dateiname;
    };
    [/cpp]
    


  • Von wem kommt denn der Ausschnitt? Das, was ich bisher sehen kann, ist schon ziemlich fubar.

    Warum std::list ?
    Warum kein std::string ?
    Warum mit new erzeugen?
    Was ist das für ein Gefrickeln in addElement ?



  • liste ist eine von mir geschriebene einfache Liste.
    warum kein std::string? stimmt, warum eigentlich nicht.
    warum mit new? warum nicht? (in der Klasse Liste ist noch ein kopierkonstruktor - privat)
    addElement gehört zu der Klasse Liste, und fügt ein Element in die Liste ein 😉



  • Clundsch schrieb:

    warum mit new? warum nicht? (in der Klasse Liste ist noch ein kopierkonstruktor - privat);)

    warum doch? Was hat der Kopierkonstruktor damit zutun? new braucht man für gewöhnlich bei dynamischer Bindung, sonst eigentlich nicht.



  • ok. das mit dem new hab ich verstanden, aber das löst das Problem leider auch nicht 😞

    EDIT: Das eigentliche Problem liegt ja in der Funktion codieren (bzw an den Parametern)



  • Clundsch schrieb:

    EDIT: Das eigentliche Problem liegt ja in der Funktion codieren (bzw an den Parametern)

    Es gibt da aber ein offensichtliches Missverhältnis zwischen deinem Compiler und dir. Er behauptet, es gäbe eine Funktion codieren(Klartext), du behauptest, es gäbe eine Funktion codieren(Klartext*). Einer von euch beiden ist buggy ...



  • Bashar schrieb:

    Einer von euch beiden ist buggy ...

    darüber musste ich schmunzeln 😉
    obwohl das dann ich wohl wieder bin...

    aber was heißt eigentlich das '&' hinter dem Sternchen?

    CodierterText::codieren(Klartext*&)
    


  • Clundsch schrieb:

    CodierterText::codieren(Klartext*&)
    

    OMG! Herr, hab erbarmen, schmeiß HIRN vom Himmel!



  • Clundsch schrieb:

    aber was heißt eigentlich das '&' hinter dem Sternchen?

    CodierterText::codieren(Klartext*&)
    

    Daß es sich um eine Referenz handelt.



  • sorry, aber das ist die Fehlermeldung (hab ich vergessen hinzuschreiben)


Anmelden zum Antworten