北大 C++ 5.1 继承与派生
2017-03-02 16:14
204 查看
其他部分在有道云笔记:有道云笔记
//Code is tested based on Visual Studio 2015.
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
class CStudent {
private:
string name;
string id;
char gender;
int age;
public:
void PrintInfo();
void SetInfo(const string & name_, const string & id_, int age_, char gender_);
string GetName() { return name; }
};
void CStudent::PrintInfo() {
cout << "Name: " << name << endl;
cout << "id: " << id << endl;
cout << "gender: " << gender << endl;
cout << "age: " << age << endl;
}
void CStudent::SetInfo(const string & name_, const string &id_, int age_, char gender_) {
name = name_;
id = id_;
age = age_;
gender = gender_;
}
class CUndergraduateStudent:public CStudent {
private:
string department;
public:
void QualifiedForBaoYan() {
cout << "qualified for baoyan." << endl;
}
void PrintInfo() {
CStudent::PrintInfo();
cout << "Department: " << department << endl;
}
void SetInfo(const string & name_, const string & id_,
int age_, char gender_, const string & department_) {
CStudent::SetInfo(name_, id_, age_, gender_);
department = department_;
}
};
int main() {
CUndergraduateStudent s2;
s2.SetInfo("Harry Potter","10141511109",19,'M',"Computer Science");
cout << s2.GetName() << " is ";
s2.QualifiedForBaoYan();
s2.PrintInfo();
system("pause");
return 0;
}
//Code is tested based on Visual Studio 2015.
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
class CStudent {
private:
string name;
string id;
char gender;
int age;
public:
void PrintInfo();
void SetInfo(const string & name_, const string & id_, int age_, char gender_);
string GetName() { return name; }
};
void CStudent::PrintInfo() {
cout << "Name: " << name << endl;
cout << "id: " << id << endl;
cout << "gender: " << gender << endl;
cout << "age: " << age << endl;
}
void CStudent::SetInfo(const string & name_, const string &id_, int age_, char gender_) {
name = name_;
id = id_;
age = age_;
gender = gender_;
}
class CUndergraduateStudent:public CStudent {
private:
string department;
public:
void QualifiedForBaoYan() {
cout << "qualified for baoyan." << endl;
}
void PrintInfo() {
CStudent::PrintInfo();
cout << "Department: " << department << endl;
}
void SetInfo(const string & name_, const string & id_,
int age_, char gender_, const string & department_) {
CStudent::SetInfo(name_, id_, age_, gender_);
department = department_;
}
};
int main() {
CUndergraduateStudent s2;
s2.SetInfo("Harry Potter","10141511109",19,'M',"Computer Science");
cout << s2.GetName() << " is ";
s2.QualifiedForBaoYan();
s2.PrintInfo();
system("pause");
return 0;
}
相关文章推荐
- C++继承时派生类的成员访问属性
- c++ 类的继承与派生
- 第11周C++上机报告(点与直线,继承与派生)
- C++入门进阶之5: 继承与派生
- c++继承与派生
- C++第十二周【任务2】定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)。
- C++程序设计-第11周 继承与派生
- c++继承与派生
- C++继承和派生
- PKU C++程序设计实习 学习笔记2 继承与派生
- C++的继承与派生
- C++之继承与派生(3)
- C++ 继承与派生
- C++继承与派生(原理归纳)
- C++第10/11周项目 继承与派生 【职员有薪水了 】(复习新版)
- C++ 什么是继承和派生
- C++语言--继承-5.1----c++继承经典例子
- c++ 类的继承与派生
- C++学习笔记13:类继承和派生、虚函数
- C++_继承与派生