日志
-
2019-05-19 22:03
-
解决在模板函数中处理不同的数据类型有一些方法,在编译期间可以利用模板特化实现,运行期间可以利用多态、函数绑定等来实现。
阅读全文»分类:C++|回复:0|浏览:603
方法一:利用模板特化来处理模板函数中的不同数据类型,而且类型中的属性也可以不同。
struct A
{
int m_a = 1;
};
struct B
{
QString m_b;
};
template <typename T>
inline QString convert(T &data){}
template <>
inline QString convert<A>(A &a)
{
a.m_a++;
return QString::number(a.m_a);
}
template<>
inline QString convert<B>(B &b)
{
b.m_b = &q ..