Konstruktor bringt Fehler C2572



  • Hallo Leute,

    bin noch recht neu hier aber bräuchte eure Hilfe.
    Mache zur Zeit ein C++ Praktikum mit mehreren Aufgaben und bei einer bin ich auf ein Problem gestoßen.
    Kurz als Einführung, wir sollen etwas Grafisch ausgeben (Füllstand und Temperatur eines Kessels) und die Programme fürs Grafische haben wir schon fertig bekommen aber bei meinen eigenen Sachen ist jetzt das Problem aufgetreten das er mir beim compilen den Fehler

    error C2572: 'Kessel::Kessel': Neudefinition des Standardparameters: Parameter 4
    error C2572: 'Kessel::Kessel': Neudefinition des Standardparameters: Parameter 5

    bringt, ich versteh das so das er meint ich hätte das neu definiert aber ich soll das über nen "Konstruktor" machen und dachte dass ich das richtig programiert hätte, hier der Code:

    Header:

    # ifndef KESSEL
    # define KESSEL
    
    class Kessel 
    {
    	public:
    	double dftLK, dftGK;
    	int nXKoord , nYKoord;
    	char * szName;
    	Kessel(char *Name, int X, int Y, double L=0, double T=0);
    	~Kessel();
    	void Fuellen(double dftLF, double dftGF);
    	void Print();
    };
    
    #endif
    

    Main:

    #include <iostream>
    #include "kessel.h"
    #include "Winadapt.h"
    using namespace std;
    
    Kessel::Kessel(char *Name, int X, int Y, double L=0, double T =0)
    {
    	szName = new char;
    	nXKoord = X;
    	nYKoord = Y;
    	dftLK = L;
    	dftGK = T;
    	strcpy(szName, Name);
    };
    
    Kessel::~Kessel()
    {
    	delete szName;
    };
    

    Das Mainprogramm geht noch weiter aber das sollte nichts mit dem Fehler zu tun haben.
    Hoffe ihr könnt mir weiterhelfen.

    Mfg
    Sorec

    P.S.: Bin mir nicht ganz sicher ob ich das richtige Unterforum getroffen habe, wenn nicht bitte ich einen Moderator den Beitrag zu verschieben.



  • Lass halt einfach den Standartparameter da web, also die vordefinition da. Dann müssts doch gehen oder nicht?

    Gruß Tobi.



  • Welchen Standardparameter meinst du ?



  • In der Definition der Methode muss das "=0" weg!



  • Vielen vielen Dank, jetzt funktioniert alles 🙂


Anmelden zum Antworten