抽象与模板

抽象类和模板都提供了函数的接口定义,两者的应用场景有什么区别呢?

抽象类

  1. 提供接口的定义形式,接口名,参数类型等。
  2. 子类继承重新实现接口,垂直扩展。
  3. 共享接口定义。

模板类

  1. 定义抽象的公共逻辑处理部分代码。
  2. 绑定类型模板实例化,水平扩展。
  3. 共享公共处理逻辑。

常用手段

  1. 重载(对模板函数)
  2. 偏特化(对模板类而言)
  3. 虚函数

参考: https://github.com/wuye9036/CppTemplateTutorial.git

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。