关于template和 explicit

[复制链接]
 楼主| baidudz 发表于 2012-7-29 21:24 | 显示全部楼层 |阅读模式
template<typename Concrete, typename Base>
struct component : Base
{
component() : Base() {}

template<typename Parent>
explicit component( Parent * parent ) : Base(parent) {}

哪位大虾帮忙解释下,这样做的意义是什么?继承它有什么要求?
秋天落叶 发表于 2012-7-29 21:36 | 显示全部楼层
这是一个泛化编程,explicit是为了防止隐式转换。而你的继承是私有继承,实现组合功能,这个要求要看你要实现什么了。
pkat 发表于 2012-7-29 21:46 | 显示全部楼层
template是一个模板
explicit 防止你在构造的时候进行隐式转换
火箭球迷 发表于 2012-7-29 21:55 | 显示全部楼层
explicit 可防止隐式转换
hsbjb 发表于 2012-7-29 21:59 | 显示全部楼层
模板和限制显式实例化
您需要登录后才可以回帖 登录 | 注册

本版积分规则

239

主题

2284

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

239

主题

2284

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部