您的位置:首页 > 编程语言 > C语言/C++

北大 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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ 基础学习 北大