关于abstract和virtual用法区别

  关于abstract和virtual用法区别
作者:- <script src="http://www.2008red.com/red_vip/articlehits.php?workid=473434&articleid=1768"></script>

abstract用于抽象类,一般是比较底层的基类  
  例如定义一个人事管理系统:先抽象出一个类“人”,然后“人”又可以派生出“普通员工”、“管理者”、“老板”,在现实中能够存在的只有“普通员工”、“管理者”、“老板”,而“人”是个抽象昂的定义,所以可以定义其为abstract抽象类!  
   
  virtual方便派生类的重写  
  例如,你定义一个图形类,它又派生了圆形和方形两个类,作为图形肯定是要能有绘图的Draw方法的,这时就可以把图形类中的Draw方法定义为virtual,然后在圆形类中重写Draw方法是画圆、在方形类中重写Draw方法为画方形。

abstract定义的类方法必须在继承的类中进行实现,而且没有实际的代码,类似接口
virtual定义的方法中可以有实际的代码,但是可以在父类的子类中定义override类型的同名方法覆盖父类的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值