开发中遇到个问题,问题如下:
有7中类型的信息,每个类型有相同的地方,也有不用之处,但是类内函数都一样。
最开始考虑用模板实现,因为类内函数一样,于是写完,编译,报错,查问题。
发现模板函数不能在cpp文件中实现,要将实现与定义都放在.h文件中。为什么?
这是因为
模板实例化是发生在编译期(Compile-time)的
后面提交项目后,自己在家改版:
将7中信息相同的属性归为基类,再继承出7种派生类,基类函数定为虚函数,采用多态实现派生类每个同名函数不同作用。
这样别人调接口时,只需要实例化好7种类型中的任意一个,直接作为参数传入我写好的接口中(传入之前最好用static_cast强转一下,为了安全起见)。
于是这里产生的疑问有:模板和多态的区别?什么情况下用多态比较好、什么情况下用模板比较好呢?
未完待续…
继续阅读与本文标签相同的文章
上一篇 :
Fastjson和jackson的序列化问题
-
“自我造血”搞科研,这家省级研究院在莞揭牌,采用“平台+公司”新方式
2026-05-15栏目: 教程
-
获授权可在线查客户健康信息?上海市健康保险交易平台今上线
2026-05-15栏目: 教程
-
国家级科研成果!用机器人造飞机成为可能!
2026-05-15栏目: 教程
-
一头多用,协作式应用或成为下一个市场爆发点
2026-05-15栏目: 教程
-
链闻,广东正式上线区块链财政电子票据
2026-05-15栏目: 教程
