【发布时间】:2017-11-28 10:57:32
【问题描述】:
我想弄清楚:有没有办法用 c++ 模板类进行重构?我想快速插入基类或专用模板的虚函数。
如果你的班级不够大也没关系。但是当你有 10 种方法需要重写和专门化时,它就会变得常规且容易出错。
例如,我有这个代码
template <typename T>
class MyTemplateInterface
{
public:
virtual void DoWork() = 0;
};
比我写的代码
template <typename T>
class MyTemplateClass : public MyTemplateInterface<T>
{
public:
MyTemplateClass() {}
};
而我想要得到的是那个
template <typename T>
class MyTemplateClass : public MyTemplateInterface<T>
{
public:
MyTemplateClass() {}
void DoWork() override
{
}
};
template<>
void MyTemplateClass<int>::DoWork()
{
// specialized template
}
附言对不起我的英语不好
【问题讨论】:
-
感谢您的回答!文章说Qt不支持模板,但是我用的是纯C++代码。那么我可以假设如果 Qt 不支持它,Qt Creator 也不支持吗?也许还有另一种简单的方法可以解决这个问题?
标签: c++ qt templates qt-creator