0
can someone solve my problem, please....
2 Réponses
+ 3
#include <iostream>
using namespace std;
class Birthday {
public:
Birthday(int m, int d, int y)
: month(m), day(d), year(y)
{ }
void printDate()
{
cout<<month<<"/"<<day <<"/"<<year<<endl;
}
private:
int month;
int day;
int year;
};
class Characteristic {
public:
Characteristic (string x)
: characteristic(x)
{ }
void printcha()
{
cout << characteristic << endl;
}
private:
string characteristic;
};
class Person {
public:
Person(string n, Birthday b, Characteristic x )
: name(n), bd(b), cha(x)
{ }
void printInfo()
{
cout << name << endl;
bd.printDate();
cha.printcha();
}
private:
string name;
Birthday bd;
Characteristic cha;
};
int main() {
Birthday bd(03,04,1997);
Characteristic cha("LeaveMeAlone");
Person p("David", bd, cha);
p.printInfo();
}
+ 2
Line 20: Constructor must have same name as class, make it uppercase -> Characteristic(){}
Line 33, 45, 50: Here you want to access the class, and your classes name is uppercase again -> Characteristic
Line 50: Characteristic's constructor takes a <string> as an argument, so LeaveMeAlone needs to be in double quotation marks so compiler recognizes it as a string -> "LeaveMeAlone"
Line 50: Missing semicolon at the end of the line!