用c++写【题目】有一个学生类 Stu,包括学生姓名、成绩,一个教师类 Tea,包括教师姓 ,包括教师姓 名、 职称。这两个类共用一友元函数,输出信息:学生姓成绩教师名、 职称。
时间: 2024-02-09 20:11:25 浏览: 129
好的,这是一个简单的实现,可以按照以下方式进行:
```c++
#include <iostream>
#include <string>
using namespace std;
class Tea; // 先声明Tea类,以便在Stu类中使用
class Stu {
private:
string name;
int score;
public:
Stu(string n, int s) {
name = n;
score = s;
}
friend void printInfo(Stu& s, Tea& t); // 声明友元函数
};
class Tea {
private:
string name;
string title;
public:
Tea(string n, string t) {
name = n;
title = t;
}
friend void printInfo(Stu& s, Tea& t); // 声明友元函数
};
void printInfo(Stu& s, Tea& t) {
cout << s.name << " " << s.score << " " << t.name << " " << t.title << endl;
}
int main() {
Stu s("Tom", 90);
Tea t("Jack", "Professor");
printInfo(s, t);
return 0;
}
```
在上面的代码中,Stu类和Tea类都声明了一个名为printInfo的友元函数,用于输出学生和教师的信息。在main函数中,我们创建了一个Stu对象和一个Tea对象,并将它们传递给printInfo函数进行输出。
阅读全文