代码改变世界

Template 和 virtual function

2016-07-24 23:17  金山大游侠  阅读(490)  评论(0)    收藏  举报

Template和virtual function是两种不同类型的多态。

Template的多态是在编译期决定的,而virtual function的多态是在运行时决定的。

从应用形式上看,Template是发散式的,让相同的实现代码应用于不同的场合;virtual function是收敛式的,让不同的代码用于相通的场合。

从思维方式上看,Template是泛型式编程风格,看重算法的普适性;virtual function是对象式编程风格,看重的是接口和实现的分离度。