定义一个模板类,能够实例化一个学生对象和一个教师对象,学生有年龄、姓名和绩点三种属性(例如20岁的Bob,绩点3.8)教师有姓名,教学科目和工号三种属性(例如教英语的李华工号为10086),并打印输出
时间: 2024-05-14 22:19:41 浏览: 61
好的,我理解您的问题了。下面是模板类的定义以及实例化学生和教师对象的示例代码:
```
#include <iostream>
#include <string>
using namespace std;
// 定义一个模板类
template <class T1, class T2, class T3>
class Person {
public:
Person(T1 name, T2 id, T3 subject) {
this->name = name;
this->id = id;
this->subject = subject;
}
void print() {
cout << "姓名:" << this->name << " ";
cout << "工号/学号:" << this->id << " ";
cout << "教学科目/绩点:" << this->subject << endl;
}
private:
T1 name;
T2 id;
T3 subject;
};
int main() {
Person<string, string, double> student("Bob", "001", 3.8);
student.print();
Person<string, int, string> teacher("李华", 10086, "英语");
teacher.print();
return 0;
}
```
输出结果如下:
```
姓名:Bob 工号/学号:001 教学科目/绩点:3.8
姓名:李华 工号/学号:10086 教学科目/绩点:英语
```
希望可以帮到您!如果您还有其他问题,可以随时提出来哦。