有一个学生类 Stu,包括学生姓名、成绩,一个教师类 Tea,包括教师姓名、职称。这两个类共用一个友元函数,输出信息:学生姓名、成绩、教师姓名、职称。
时间: 2023-07-04 15:11:47 浏览: 140
一个 Student类:包括姓名、学号、性别、专业、家庭地址。
好的,这是一个简单的示例代码:
```
#include <iostream>
#include <string>
using namespace std;
class Tea;
class Stu {
private:
string name;
int score;
public:
Stu(string _name, int _score) : name(_name), score(_score) {}
friend void showInfo(Stu& s, Tea& t);
};
class Tea {
private:
string name;
string title;
public:
Tea(string _name, string _title) : name(_name), title(_title) {}
friend void showInfo(Stu& s, Tea& t);
};
void showInfo(Stu& s, Tea& t) {
cout << "学生姓名:" << s.name << ",成绩:" << s.score << ",教师姓名:" << t.name << ",职称:" << t.title << endl;
}
int main() {
Stu s("张三", 90);
Tea t("李老师", "副教授");
showInfo(s, t);
return 0;
}
```
在这个示例中,Stu 类和 Tea 类都声明了一个友元函数 showInfo,用于输出学生和教师的信息。在 main 函数中,我们创建了一个学生对象 s 和一个教师对象 t,并通过 showInfo 函数输出了它们的信息。注意,在 Stu 类和 Tea 类中都要声明友元函数,以便它们能够互相访问私有成员。
阅读全文