当前位置:首页 > 编程笔记 > 正文
已解决

C++学习day3

来自网友在路上 159859提问 提问时间:2023-10-10 15:38:48阅读次数: 59

最佳答案 问答题库598位专家为你答疑解惑

目录

作业:

1> 思维导图

2>设计一个Per类,类中包含私有成员:姓名、年龄、指针成员身高、体重,再设计一个Stu类,类中包含私有成员:成绩、Per类对象p1,设计这两个类的构造函数、析构函数和拷贝构造函数。

  效果图:


作业:

1> 思维导图

2>设计一个Per类,类中包含私有成员:姓名、年龄、指针成员身高、体重,再设计一个Stu类,类中包含私有成员:成绩、Per类对象p1,设计这两个类的构造函数、析构函数和拷贝构造函数。

#include <iostream>using namespace std;
//设计一个per类和stu类
class Per
{
private://私有的string name;//姓名int age;//年龄double *hight;//身高double *weight;//体重
public://构造函数Per(string n,int a,double h,double w):name(n),age(a),hight(new double(h)),weight(new double(w)){cout << "Per::有参构造函数" << endl;}string GetName()const{return name;}int GetAge() const{return age;}double GetHight() const{return *hight;}double GetWeight() const{return *weight;}void show(){cout << "姓名:" << name << endl;cout << "年龄:" << age << endl;cout << "身高:" << *hight << endl;cout << "体重:" << *weight << endl;}//析构函数~Per(){cout << "Per::析构函数" << endl;delete hight;delete weight;}};
class Stu
{
private:int score;//成绩Per p1;//学生信息
public://构造函数Stu(int s,string n,int a,double h,double w): score(s), p1(n,a,h,w){cout << "Stu:: 有参构造函数" << endl;}void show(){cout << "成绩:"<< score << endl;p1.show();}//拷贝构造函数Stu(const Stu &other):score(other.score),p1(other.p1){cout << "Stu::拷贝构造函数" <<endl;}Stu& operator=(const Stu& other){if (this == &other)return *this;score = other.score;p1 = Per(other.p1.GetName(), other.p1.GetAge(), other.p1.GetHight(), other.p1.GetWeight());return *this;}//析构函数~Stu(){cout << "Stu:: 析构函数" << endl;}};int main()
{Stu S1(100,"zhangsan",23,180.7,100.98);//有参构造函数S1.show();Stu S2(S1);//拷贝构造函数return 0;
}

  效果图:

 

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"C++学习day3":http://eshow365.cn/6-18453-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!