正文

友元类使用的一个小例子2009-10-14 17:11:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/bigpig/49265.html

分享到:

// teacher.h //student's classclass STUDENT{private: //do add variable of students char Gradu_name[10]; char Gradu_direction[20]; char Gradu_class[10];public: //do add method of student STUDENT(){}; STUDENT(char name[],char direction[],char _class[]); void SetStu(char name[],char direction[],char _class[]); ~STUDENT(){}; friend class TEACHER;};class TEACHER{ private:  //do add variable  char Teacher_name[10]; public:  //do add method  TEACHER(){};  TEACHER(char name[]);  ~TEACHER(){};  void ListStudent(TEACHER teacher,STUDENT stu[],int num);};   //teacher.cpp #include <iostream.h>#include <string.h>#include "Teacher.h"STUDENT::STUDENT(char name[],char direction[],char _class[]){ strcpy(Gradu_name,name); strcpy(Gradu_direction,direction); strcpy(Gradu_class,_class);}void STUDENT::SetStu(char name[],char direction[],char _class[]){ strcpy(Gradu_name,name); strcpy(Gradu_direction,direction); strcpy(Gradu_class,_class);} TEACHER::TEACHER(char name[]){ strcpy(Teacher_name,name);}void TEACHER::ListStudent(TEACHER teacher,STUDENT stu[],int num){ int i; cout<<"Teacher'name:"<<teacher.Teacher_name<<endl; cout<<"His students :"<<endl; for(i=0;i<num;i++) {  cout<<stu[i].Gradu_name<<"   "<<stu[i].Gradu_direction<<"  "<<stu[i].Gradu_class<<endl; } return ;} //program.cpp #include <iostream.h>#include "Teacher.h"int main(){ STUDENT stu1[2]; TEACHER teacher("HALI"); int i; char name[10],direction[20],_class[10]; for(i=0;i<2;i++) {  cout<<"输入第"<<i<<"个的姓名:"<<endl;  cin>>name;  cin.get();        cout<<"输入第"<<i<<"个的方向:"<<endl;  cin>>direction;  cin.get();  cout<<"输入第"<<i<<"个的班级:"<<endl;  cin>>_class;  cin.get();  stu1[i].SetStu(name,direction,_class); } teacher.ListStudent(teacher,stu1,2); cin.get(); return 0;}

阅读(4578) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册