5.1建立一个虚基类

原创 2015年07月10日 11:52:38

#include<iostream>
 #include<string>
 using namespace std;


 class base
 {
char *name;
int age;
int Class;
 public:
void setname (char na[])
{
name = new char[strlen(na)+1];
strcpy(name , na);
}
void setage(int a)
{
age=a;
}
void setClass(int b)
{
 Class=b;
}

char *getname(){return name;}
int getage() {return age;}
 };


 class leader : virtual public base
 {
char *school;
char *department;
 public :
void setjob(char jo[])
{
strcpy(school, jo);
}
void setdepartment(char dep[])
{
department= new char [strlen(dep)+1];
department=dep;
}
char *getdepartment(){return department;}
 };


 class engineer : virtual public base
 {
char *prof;
char *major;
 public :
void setprof(char pro[])
{
prof=new char[strlen(pro)+1];
prof=pro;
}


 void setmajor(char maj[])
{
major=new char[strlen(maj)+1];
major=maj;
}
char *getprof(){ return prof;}
char *getmajor(){return major;}
 };


 void main ()
 {
c.setname("王思琪");
c.setage(19);
c.setClass (1141);
c.setschool("广东海洋大学");
c.setdepartment("计协");
c.setprof("技术部部长");
c.setmajor("信管");
cout<<"输出结果:"<<endl;

cout<<"  "<<c.getname()<<",年龄"<<c.getage()

<<"岁,担任"<<c.getdepartment()<<c.getprof()<<","<<endl;

就读"<<c.getschool()<<c.getmajor()

<<"专业"<<c.getClass()<<"班"<<endl;

 }

 

相关文章推荐

C++中虚基类的实现 一个例子

  • 2009年03月29日 10:26
  • 1KB
  • 下载

多重继承与虚基类

  • 2012年06月13日 16:14
  • 918KB
  • 下载

十二周实验报告任务 3 设计一个在下面一段类的定义中,自行车类的虚基类也为车辆类,摩托车类的基类为自行车类和机动车类

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生  * All rights reserved. * 文件名称:设计...

vs2008 多重继承虚基类的简单应用

  • 2014年09月29日 17:12
  • 709KB
  • 下载

OJ第三批——Problem Q: B 虚拟继承(虚基类)-沙发床(改错题)

问题及代码: Problem Q: B 虚拟继承(虚基类)-沙发床(改错题) Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 356  Solve...

虚基类的应用

  • 2013年05月08日 07:00
  • 2KB
  • 下载

C++ 虚基类构造函数的执行顺序

(1)调用基类的构造函数,多个基类则按派生类声明时           列出的次序、从左到右调用,而不是初始化列表中           的次序。 (2)调用对象成员(子对象)的构造函数,按类声明中 ...

虚基类的使用实例

  • 2012年05月27日 09:49
  • 235KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:5.1建立一个虚基类
举报原因:
原因补充:

(最多只允许输入30个字)