多态继承的一个小例子,mark一下。
2013-05-08 15:53
302 查看
#include <iostream> using namespace std; class Point2d{ public: Point2d( float x = 0.0, float y = 0.0) : _x(x),_y(y){}; float x(){ return _x; } float y(){ return _y; } virtual float z(){ return 0.0;} virtual void z(float){ } virtual void operator+=(Point2d& rhs) { _x += rhs.x(); _y += rhs.y(); } protected: float _x, _y; }; class Point3d : public Point2d{ public: Point3d(float x = 0.0, float y = 0.0, float z = 0.0) : Point2d(x, y), _z(z){}; float z(){ return _z;} void z(float newZ){ _z=newZ; } void operator+=(Point2d& rhs) { Point2d::operator+=(rhs); _z += rhs.z(); } protected: float _z; }; int main() { Point2d p2d(2.1, 2.2); Point3d p3d(3.1, 3.2, 3.3); p3d += p2d; cout<<"p3d data members: "<<p3d.x()<<" "<<p3d.y()<<" "<<p3d.z()<<endl; }
相关文章推荐
- 关于继承和多态的一个简单例子
- php部分--面向对象三大特性-封装(另加连续调用的一个例子)、继承(重写、重载的例子)、多态;
- 关于多态的一个很形象的例子
- C++多态公有继承的一个例子
- [mfc学习笔记一]以一个CGdiObject类的绘图例子来看一下绘图操作
- Lua继承的一个例子
- 继承父类的方法,父类方法的覆写。 向上转型后父类对象执行被覆写后的方法 向上转型后再向下转型 非多态强转? 多态的例子
- 【自】JavaScript面向对象初探二:通过编写一个拖拽例子,让我们了解对象的继承
- c++——多态、继承、运算符重载综合例子代码
- 多态于继承的一个题目
- 多态的一个简单例子
- 一个使用enum实现多态的例子
- 一个小例子理解多态 - 修改 0 次
- 多态之中的一个(继承和虚函数)
- java中类之间的关系之封装、继承与多态的几个例子
- 关于Java封装、继承、多态的生动例子——咖喱块
- 网上的一个block device driver for 2.6.31的例子,我改了一下可以在2.3.36上用
- 《程序员的第一年》---------- 复习一下C#的【封装 多态 继承 -----简单计算器源码实例】
- javascript 中实现继承及多态的例子