kehou..
来源:互联网 发布:义乌淘宝培训班要求 编辑:程序博客网 时间:2024/06/08 15:07
#include <iostream>#include <stdlib.h>#include <string>#include<typeinfo>using namespace std;/** * 定义移动类:Movable * 纯虚函数:move */class Movable{public: virtual void move() = 0;};/** * 定义公交车类:Bus * 公有继承移动类 * 特有方法carry */class Bus : public Movable{public: virtual void move() { cout << "Bus -- move" << endl; } void carry() { cout << "Bus -- carry" << endl; }};/** * 定义坦克类:Tank * 公有继承移动类 * 特有方法fire */class Tank :public Movable{public: virtual void move() { cout << "Tank -- move" << endl; } void fire() { cout << "Tank -- fire" << endl; }};/** * 定义函数doSomething含参数 * 使用dynamic_cast转换类型 */void doSomething(Movable *obj){ obj->move(); if(typeid(*obj) == typeid(Bus)) { Bus *bus = dynamic_cast<Bus *>(obj); bus->carry(); } if(typeid(*obj) == typeid(Tank)) { Tank *tank = dynamic_cast<Tank *>(obj); tank->fire(); }}int main(void){ Bus b; Tank t; doSomething(&b); doSomething(&t); return 0;}
#include <iostream>#include <string>#include <stdlib.h>using namespace std;/** * 定义函数division * 参数整型dividend、整型divisor */int division(int dividend, int divisor){ if(0 == divisor) { // 抛出异常,字符串“除数不能为0” throw string("除数不能为0"); } else { return dividend / divisor; }}int main(void){ int d1 = 0; int d2 = 0; int r = 0; cin >> d1; cin >> d2; // 使用try...catch...捕获异常 try { division(d1,d2); } catch(string &p) { cout << p << endl; } return 0;}
都是慕课网后面的程序练习,防止遗忘,所以,写到博客
阅读全文
0 0
- kehou
- kehou..
- Spring中,applicationContext.xml 配置文件在web.xml中的配置详解
- 使用Eclipse开发工具
- 特征工程之连续特征与离散特征处理方法介绍
- Android关于项目中遇到的按home键退出到桌面,再次打开重新启动程序的解决方法
- Serlvert
- kehou..
- 详解HttpURLConnection
- Android Studio:SVN->GIT(三)
- iOS应用架构谈(3) 网络层设计方案
- Ubuntu 14 上安装youcompleteme
- Utils帮助类(半角转为全角和去除特殊字符或将所有中文标号替换为英文标号)
- HTML5 中的新特性
- opencv之轮廓特征属性及应用
- easyui-datagrid实例