实现类的嵌套,列表赋值,构造函数,析构函数,拷贝构造函数
#include <iostream>
using namespace std;
class Per
{
public:
string name;
int age;
int height;
int weight;
public:
Per()
{
cout << "这是Per构造函数" << endl;
}
Per(string name,int age,int height,\
int weight):name(name),age(age),\
height(height),weight(weight)
{}
};
class Stu
{
private:
Per p1;
double score;
public:
Stu()
{
cout << "这是Stu构造函数" << endl;
}
Stu(string name,int age,int height,\
int weight,double score):p1(name,age,\
height,weight),score(score)
{
cout << "这是有参Stu构造函数" << endl;
}
Stu(const Stu &other):p1(other.p1.name,other.p1.age,\
other.p1.height,other.p1.weight),score(other.score)
{
cout << "这是拷贝构造函数" << endl;
}
void show()
{
cout << p1.name <<'\t'\
<< p1.age <<'\t'\
<< p1.height <<'\t'\
<< p1.weight <<'\t'\
<< score << endl;
}
~Stu()
{
cout << "这是析构函数" << endl;
}
};
int main()
{
Stu s1;
Stu s2("li",20,188,70,99.8);
s2.show();
cout << "\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"<<endl;
Stu s3(s2);
s3.show();
return 0;
}
实现效果