- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C多态编程
Tutorial 6 : C++多态编程
理解多态的概念、实现机制和应用场合;
了解静态束定与动态束定的区别及优缺点;
理解基类对象与派生类对象的关系及赋值兼容规则;
掌握虚函数的概念、定义及使用方法;
掌握抽象基类的概念、定义及使用方法;
体会动态束定机制在简化接口、提高软件可维护性方面的优点,掌握其特性和用法;
在本实验中,通过练习学会编写运算符重载和具有虚函数的C++程序。
Case 1:
实现复数类加减法运算重载为成员函数。
完成这个题目,需要遵循以下步骤。
Step 1: 打开 Visual C++ 6.0
Step 2: 新建工程(Case1)
Step 3: 向工程中新建一个文件(Case1.cpp)
Step 4: 将代码写进文件Case1.cpp
Step 5: 编译
Step 6: 链接
Step 7: 执行
步骤 1: 打开Visual C++ 6.0
从桌面上顺序选择“开始”→“程序” →Microsoft Visual Studio→Visual C++6.0即可进入到VC的集成开发环境中,此时屏幕上在短暂显示Visual C++6.0的版权页后,出现Visual C++6.0的主窗口,如图所示。
图 Visual C++6.0主窗口
在Visual C++6.0主窗口的顶部是主菜单栏。其中包含9个菜单项:File(文件)、Edit(编辑)、View(查看)、Insert(插入)、Project(项目)、Build(构建)、Tools(工具)、Windows(窗口)、Help(帮助)。
主窗口的左侧是项目工作区窗口,右侧是程序编辑窗口。工作区窗口用来显示所设定的工作区的信息,程序编辑窗口用来输入和编辑源程序。
Step 2: 新建工程(Case1)
选择菜单文件File-new-projects-Win32 Console Application
The kind of Case1 project is an empty project:
Step 3:添加(Case1.cpp) to the Case1 project
选择菜单 file-new-file-C/C++ Source File
Step 4: 将代码写进Case1.cpp
在文件工作区选择 Case1.cpp
代码:
/* The program code of Case 1*/
#include iostream
using namespace std;
class Complex { //复数类定义
public: //外部接口
Complex(double r = 0.0, double i = 0.0) : real(r), imag(i) { } //构造函数
Complex operator + (const Complex c2) const; //运算符+重载成员函数
Complex operator - (const Complex c2) const; //运算符-重载成员函数
void display() const; //输出复数
private: //私有数据成员
double real; //复数实部
double imag; //复数虚部
};
Complex Complex::operator + (const Complex c2) const { //重载运算符函数实现
return Complex(real + c2.real, imag + c2.imag); //创建一个临时无名对象作为返回值
}
Complex Complex::operator - (const Complex c2) const { //重载运算符函数实现
return Complex(real - c2.real, imag - c2.imag); //创建一个临时无名对象作为返回值
}
void Complex::display() const {
cout ( real , imag ) endl;
}
int main() { //主函数
Complex c1(5, 4), c2(2, 10), c3; //定义复数类的对象
cout c1 = ; c1.display();
cout c2 = ; c2.display();
c3 = c1 - c2; //使用重载运算符完成复数减法
cout c3 = c1 - c2 = ; c3.display();
c3 = c1 + c2; //使用重载运算符完成复数加法
cout c3 = c1 + c2 = ; c3.display();
return
您可能关注的文档
- 如何实现“人生规划”.ppt
- 规章制度(烧结厂).doc
- 浅谈预拌混凝土的配合比设计.doc
- 煤矿防突区域验证.ppt
- 8.是否处理法.ppt
- 物理复习007.doc
- 如何抓德育创新.doc
- 高等数学第八章空间解析几何教学ppt.ppt
- 第五章房地产3节.ppt
- 08样品管理程序.doc
- 六年级数学下册教学课件《解比例》.pptx
- 8.21.5 鸟类的生殖与发育(课件)八年级生物下册课件(苏教版).pptx
- 钠离子电池项目智能制造方案(范文参考).docx
- 2023-2024学年吉林省吉林市舒兰市七年级(上)期末语文试卷.docx
- 2024年吉林省吉林市丰满区亚桥实验学校中考数学三模试卷.docx
- 2023-2024学年吉林省辽源市东辽县七年级(上)期末英语试卷.docx
- 2023-2024学年吉林四平九年级数学第一学期期末水平检测试卷.docx
- 2023-2024学年吉林市蛟河市三校联考九年级(上)期末英语试卷.docx
- 2023-2024学年吉林松原九年级英语上册考场实战试卷.docx
- 电解液新材料项目智能制造方案.docx
最近下载
- 行政赔偿—行政赔偿程序(行政法课件).pptx VIP
- 开放性气胸护理(共28张PPT)【28页】.pptx
- 广东省深圳市福田区六年级(上)期末语文试卷.docx VIP
- 如何防止假冒公益机构的诈骗.pptx
- 反省事故的根源在行动中找原因.pptx
- 国家开放大学2024年1月(2023秋)《11836会计制度设计》期末考试真题及答案.pdf
- 宝马汽车原厂轿车修理保养中文维修手册 F02 动力传动系统 技术培训.pdf VIP
- 警惕网络藏品鉴定诈骗的常见手法.pptx
- 湖北省十堰市茅箭区东方远志学校2023-2024学年五年级上学期期末英语试题.docx VIP
- 历史竞赛--明史100题.docx VIP
文档评论(0)