Wo ist der Fehler und was kann ich verbessern?



  • Hier ist der Codeausschnitt :

    class Bankautomat {
    public:

    unsigned int Guthaben{0};
    std::string Standort= "";
    std::string Besitzer = "";
    Bankautomat::Bankautomat()
    	:Guthaben{ 0 }, Standort{ "anonym" }, Besitzer{ "anonym" } {};
    	void out() {
    	std::cout << "Ihr Konto wird in :" << Standort << " verwaltet"<<std::endl;
    	std::cout << "sie haben " << Guthaben << " Euro auf ihrem Konto"<<std::endl;
    	std::cout << "Das Konto wurde von " << Besitzer << " gegründet"<<std::endl; 
    }
    

    };
    in der main:
    Bankautomat Aaron_Konto{};
    Aaron_Konto.out();
    ...
    Fehlermeldung: Schweregrad Code Beschreibung Projekt Datei Zeile Unterdrückungszustand
    Fehler C4596 "{ctor}": Unzulässiger vollständig angegebener Name in Elementdeklaration C:\Users\aaron\source\repos\c++ buch\c++ buch\c++ buch.vcxproj c:\users\aaron\source\repos\c++ buch\c++ buch\001.cpp 16
    Ps:benutze Visual studio express edittion danke schonmal für alle Antworten! 😃



    1. Tu dir selbst einen Gefallen und besorg dir ne englische Visual Studio Version. Die übersetzten Fehlermeldungen sind kaum zu verstehen.

    2. Wie schreibt man es denn normalerweise wenn man eine Funktion ausserhalb der Klassendefinition definiert? Und wie wenn man sie innerhalb der Klassendefinition definiert? Und dann guck wie du es geschrieben hast. Oder auch so: Was meinst du warum der Compiler dir die Definition von "out" durchgehen lässt, aber die von "Bankautomat::Bankautomat" nicht?

    3. Ich hoffe inbrünstig dass der Pfad source\repos\c++ buch\c++ buch\c++ buch.vcxproj nicht bedeutet dass du versuchst ein C++ Buch zu schreiben.



  • This post is deleted!

Log in to reply