I'm trying to overload the increment operator++
in my class But it tells me
no matching function for call to person::person(int&)
.
The error occurs at line 22 here is my header file
#include <string>
class person
{
private:
std::string name;
int age;
public:
//Setters
void set_name(std::string name_set);
void set_age(int age_set);
//Getters
std::string get_name();
int get_age();
//Constructors & Destructor (Overloaded Constructor)
person();
person(std::string ini_name,int ini_age);
//Operator Overloading
person operator ++(int)
{
age++;
return person(age);
}
};
here is the cpp file
#include "person.h"
//Setters Definition
void person::set_name(std::string name_set){name = name_set;}
void person::set_age(int age_set){age = age_set;}
//Getters Definition
std::string person::get_name(){return name;}
int person::get_age(){return age;}
//Constructors & Destructor (Overloaded Constructor)
person::person(){name = "Null",age = 0;}
person::person(std::string ini_name,int ini_age):
name(ini_name),age(ini_age)
{}