14周:虚函数练习
来源:互联网 发布:商务时空软件通科云盟 编辑:程序博客网 时间:2024/06/16 13:32
/* * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 作 者:李慧慧 * 完成日期:2013 年 5 月 31 日 * 版 本 号:v1.0 * 输入描述: * 问题描述:* 程序输出: * 问题分析: * 算法设计:略 */#include <iostream>using namespace std;class Vehicle //交通工具{public: void run() const { cout << "run a vehicle. "<<endl; }};class Car: public Vehicle //汽车{public: void run() const { cout << "run a car. "<<endl; }};class Airplane: public Vehicle //飞机{public: void run() const { cout << "run a airplane. "<<endl; }};int main(){ cout<<"(a) 直接用对象访问成员函数: "<<endl; Vehicle v; v.run(); Car car; Airplane airplane; car.run(); airplane.run(); cout<<"(b)用指向基类的指针访问成员函数: "<<endl; Vehicle *vp; vp=&car; vp->run(); vp=&airplane; vp->run(); return 0;}
运行结果
将Vehicle类的定义修改为虚函数,其余不变class Vehicle {public: virtual void run() const { cout << "run a vehicle. "<<endl; } //(2) run()为虚函数};
运行结果:
将Vehicle类的定义修改为纯虚函数
#include <iostream>using namespace std;class Vehicle{public:virtual void run() const = 0; //(3) run()为纯虚函数};class Car: public Vehicle //汽车{public: void run() const { cout << "run a car. "<<endl; }};class Airplane: public Vehicle //飞机{public: void run() const { cout << "run a airplane. "<<endl; }};int main(){ cout<<"(a) 直接用对象访问成员函数: "<<endl; // Vehicle v; // v.run(); Car car; Airplane airplane; car.run(); airplane.run(); cout<<"(b)用指向基类的指针访问成员函数: "<<endl; Vehicle *vp; vp=&car; vp->run(); vp=&airplane; vp->run(); return 0;}
运行结果:
纯虚函数不需要函数体
- 14周:虚函数练习
- 虚函数练习1
- 关于虚函数的练习
- 虚函数练习:动物2
- 虚函数练习:交通工具信息
- 函数练习
- 函数练习
- [YTU]_2576( 虚函数练习:动物2)
- 第14周 拓展练习(二)成绩处理函数版
- 第14周练习项目二 学生成绩处理函数版
- 指针函数练习
- 函数模板::练习1
- 需要练习的函数
- fopen fclose 函数练习
- 函数指针终极练习
- C++函数模板练习
- 构造函数练习
- 练习友元函数
- 初识Ajax技术2
- Study Flex《强引用与弱引用》
- 浏览器对DIV+CSS兼容性问题大总结
- visual studio ankhSVN安装之后不显示subclipse
- 去掉快捷箭头脚本
- 14周:虚函数练习
- /usr/bin/ld: cannot find -l* 错误的解决方法
- Web开发者不容错过的20段CSS代码
- 使用git进行管理
- awk学习记录
- Oracle 几个简单的日期函数
- Android学习笔记-常用的一些源码,防止忘记了。。。
- Android 学习笔记 Service 启动
- cocos2dx返回Android游戏黑屏解决办法