overloaded member function 'void (const char &)'



  • Hallo! bin ein wirklicher c++ neuling. hab hier dieses Programm, und versuch seit stunden die fehler Meldung:
    'Person::Person' : overloaded member function 'void (const char &)' not found in 'Person'
    aus der Welt zu schaffen 😡bin mir sicher,dass es an meinen Kopierkonstrukto liegt? aber warum 😕

    Das ist meine Headerdatei:

    class Person {
    char name[20];
    int age;
    public:

    Person(const char *pHelp = "",int years=0); //KONSTRUKTOR

    Person(const Person &per); //KOPIERKONSTRUKTOR

    const char *getName() const{return name;}

    int getAge() const {return age;}

    void setName(const char *pn){
    strcpy(name,pn);
    }

    void setAge(int ag){
    age=ag;
    }

    };

    Person::Person(const char *pHelp, int years){ //NORMALER KONSTRUKTOR
    strcpy(name,pHelp);
    age=years;
    }

    Person::Person(const char &per){ //KOPIERKONSTRUKTOR
    strcpy(name,per.getName());
    age=per.getAge();
    }
    Hoffe mir kann jemand nen Tipp geben.



  • Also wenn Du nicht falsch rein geschrieben hast , ist die deklaration:

    Person(const Person &per); //KOPIERKONSTRUKTOR
    

    Die Definition:

    Person::Person(const char &per){ //KOPIERKONSTRUKTOR
    


  • also erstmal danke für den Tipp.
    Was meinst du mit falsch reingeschrieben?
    müssen alle Funktionen die im Konstruktor was machen auch const sein?
    Ich habe ja den Kontruktor, so wie du auch hingeschrieben hast, deklariert.



  • Die Parameter bei Definition und Deklaration sollten übereinstimmen. 🙂



  • Danke!!! bin ich aber blind!


Anmelden zum Antworten