.在类内声明与定义构造西数,给数据成员(年龄age、学号num 性别sex、姓名name)赋默认值(例如:18,202311, zhangsan) ; 2.定义一个对象stu1与对象指针p1,通过指针p1调用display0函数, 查看构造函数给的默认值是否正确; 3.在类内再声明一个构造西数,在类外定义,实现函数重载(此处不
时间: 2024-02-24 14:58:00 浏览: 160
要求参数不同),能够根据传入的参数对数据成员进行初始化; 4.定义一个对象stu2与对象指针p2,通过调用不同的构造函数给数据成员赋值,然后通过指针p2调用display函数,查看数据成员是否正确赋值。
以下是示例代码:
```
#include <iostream>
using namespace std;
class Student {
private:
int age;
int num;
char sex;
string name;
public:
// 构造函数1:给数据成员赋默认值
Student() : age(18), num(202311), sex('M'), name("zhangsan") {}
// 构造函数2:实现函数重载,能够根据传入的参数对数据成员进行初始化
Student(int a, int n, char s, string na) : age(a), num(n), sex(s), name(na) {}
// 显示学生信息
void display() {
cout << "age: " << age << endl;
cout << "num: " << num << endl;
cout << "sex: " << sex << endl;
cout << "name: " << name << endl;
}
};
int main() {
// 对象stu1与对象指针p1,通过指针p1调用display函数,查看构造函数给的默认值是否正确
Student stu1;
Student *p1 = &stu1;
p1->display();
// 对象stu2与对象指针p2,通过调用不同的构造函数给数据成员赋值,然后通过指针p2调用display函数,查看数据成员是否正确赋值
Student stu2(20, 202312, 'F', "lisi");
Student *p2 = &stu2;
p2->display();
return 0;
}
```
阅读全文