String ausgeben lassen !!



  • Guten Tag,
    ich bin neu in der Welt von C++ und versuche mir gerade die Syntax beizubringen ! Allerdings hänge ich jetzt schon seit stunden an ein recht einfaches Problem, wo mir aber denoch kein "googeln" weiter half!!

    Folgendes Problem :
    Ich experimentiere momentan etwas mit classen usw. rum !
    Hier mal mein simples testprogramm!
    Ich habe eine klasse :

    class Zoo
      8 {
      9     int Besucher_am_Tag;
     10     int Anzahl_Tiere;
     11     string beliebteste_Tier;
     12     string Name;
     13     int Besucher_Counter ();
     14     public:
     15 
     16     // konstruktor
     17     Zoo (string Zoo_Name);
     18 
     19     // Getter / Setter
     20     int Get_Besucherzahl ();
     21     void Set_Lieblingstier (string Tier_Name);
     22     string Get_Lieblingstier ();
     23     string Get_Name ();
     24 };
    

    Get_Lieblingstier macht jetzt nichts anders als return beliebteste_Tier zurück geben und Set setzt es !!

    string Zoo::Get_Lieblingstier ()
     86 {
     87 
     88     return beliebteste_Tier;
     89 }
    

    Meine Main Methode sieht folgender massen aus !!

    int main ()
    103 {
    104    //Instanzierung eines Objekt der Class Zoo
    105     Zoo Berliner_Zoo ("Berliner_Zoo");
    106 
    107     Berliner_Zoo.Set_Lieblingstier ("Eisbaer Knut");
    108 
    109     cout << "\n Der " << Berliner_Zoo.Get_Name << " hat heute " << Berliner_Zoo.Get_Besucherzahl ();
    110     cout << " Besucher ! \n und das Lieblingstier ist : " << Berliner_Zoo.Get_Lieblingstier << "\n";
    111 
    112 }
    

    So wenn ich jetzt kompilieren will, kommt eine ellen lange Fehlermeldung von Zeile 109, die besagt das der String von Berliner_Zoo.Get_Name und Berliner_Zoo.Get_Lieblingstier, aus einem mir unerklärlichen Grund nicht ausgegeben werden kann! Die Strings aus der iostream können doch normalerweise mit cout ausgegeben werden, also was ist falsch ?? !!

    Ich wäre sehr dankbar für jede Hilfe ich komme einfach nicht weiter !!
    Vielen dank!!



  • Hm so auf Anhieb: Du hast das Klammernpaar, was den Methodenaufruf signalisiert, vergessen. Also:

    int main ()
    103 {
    104    //Instanzierung eines Objekt der Class Zoo
    105     Zoo Berliner_Zoo ("Berliner_Zoo");
    106
    107     Berliner_Zoo.Set_Lieblingstier ("Eisbaer Knut");
    108
    109     cout << "\n Der " << Berliner_Zoo.Get_Name[b]()[/b] << " hat heute " << Berliner_Zoo.Get_Besucherzahl ();
    110     cout << " Besucher ! \n und das Lieblingstier ist : " << Berliner_Zoo.Get_Lieblingstier[b]()[/b] << "\n";
    111
    112 }
    


  • Oh vielen dank !!
    😃 Ach ja manchmal sieht man den Wald vor lauter Bäumen nicht mehr !!

    Jetzt geht es natürlich !! 😃 😃

    Vielen vielen dank !! Und ich sitze hier schon seit stunden 🙂


Anmelden zum Antworten