- 3
- 0
- 约8.5千字
- 约 13页
- 2020-02-25 发布于安徽
- 举报
. . .
华中科技大学研究生课程考试试卷
面向对象程序设计√√□
面向对象程序设计
√
√
□开卷
□闭卷
□公共课
□专业课
课程名称: 课程类别 考核形式
2017年1月9日
2017年1月9日
杨卫东
杨卫东、左峥嵘
一、填空(共15分,每空1分)
1、编译时的多态性通过__重载__函数实现。
2、面向对象的四个基本特性是 抽象 、 多态 、 继承 和 封装 。
3、假定AB为一个类,则执行“AB a(10), *b=a, p=a;”语句时调用该类构造函数的次数为 2 。
4、C++类成员访问属性 public 、 private 、 protected 三种类型。
5、非成员函数应声明为类的__友元___函数才能访问这个类的private成员。
6、。要实现动态联编必须通过对象指针或引用来调用_虚函数_实现。
7、类B是由类A以保护方式派生的,则类A中私有访问属性的数据成员在类B中的访问属性为 不可访问 。
8、+、=、[]、-等四种运算符中,可采用友元函数重载的运算符是 + 。
9、抽象类是指具有 纯虚函数 的类,它只能作为 基类 来使用。
二、问答题(共30分,每小题6分)
1.简述运算符重载的实现方式有哪几种?给出对应的声明语法形式。
答案:
(1)类外定义的运算符重载函数
格式为:
friend 返回类型 operator op(类型 参数1,类型 参数2)
{ 函数体 }
(2)成员运算符重载函数
返回类型 类名::operator op (类型 参数)
{ 函数体 }
2.什么是多继承?多继承时,构造函数和析构函数执行顺序是怎样的?
答案:
多继承是指派生类具有多个 基类, 派生类与每个基类之间的关系仍可看作是一个单继承。
派生类构造函数的执行顺序是先执行所有基类的构造函数(顺序按照定义派生类时指定的各基类顺序),再执行派生类的构造函数,析构函数执行顺序,与构造函数完全相反。
3.写出下面程序的运行结果
#include iostream
#include string
using namespace std;
class Person
{
public:
Person(char *nam,int ag)
{ strcpy(name,nam); age = ag;
coutPerson类构造函数---nameendl;
}
Person(char *nam)
{ strcpy(name,nam);
coutPerson类构造函数(char *nam)---nameendl;
}
~Person()
{
coutPerson类析构函数---nameendl;
}
void display()
{
cout姓名:nameendl;
}
protected:
char name[100];
int age;
};
class Teacher: public Person // 声明Teacher(教师)类
{
public: // 公用部分
Teacher(char *nam,int a,char *t):Person(nam,a) // 构造函数
{ strcpy(title,t);
coutTeacher类构造函数endl;
}
~Teacher()
{
coutTeacher类析构函数endl;
}
void display1() // 输出教师有关数据
{
cout姓名:nameendl;
cout年龄ageendl;
cout职称:titleendl;
}
protected: // 保护部分
char title[10]; // 职称
};
class Student: public Person
{
public:
Student(char
您可能关注的文档
最近下载
- 2025年天津市春季高考英语真题卷含答案解析.docx VIP
- JB∕T 5088.2-2018 内燃机 旋装式机油滤清器 第2部分:试验方法.docx VIP
- 女性体态改造课件.pptx VIP
- 2026 年山东省高职(专科)单独招生文化素质考试模拟样卷.docx VIP
- 第六章扩散(材料科学基础).ppt
- 女性塑形课件.pptx VIP
- 最新平行线的性质判定专项练习40题.docx VIP
- JB∕T 5088.1-2018 内燃机 旋装式机油滤清器 第1部分:技术条件.docx VIP
- 南京铁道职业技术学院单招职业技能题库及答案.docx VIP
- 2026年河北唐山辅警考试题库附答案.docx VIP
原创力文档

文档评论(0)