【发布时间】:2015-02-19 22:41:48
【问题描述】:
我想知道实现以下内容的最佳方式是什么。
我有许多派生自抽象类BaseClass 的类。我想创建一个新类ParallelBaseClass,它基本上执行BaseClass 的所有子级的并行化。
我想到的设计是这样的:
template <class D>
class ParallelBaseClass
{
private:
std::vector<D> _classes;
public:
ParallelBaseClass(int threads, constructor_args)
{
for(int i = 0; i < threads; i++)
_classes.push_back(D(constructor_args));
}
}
但是,我不知道这是最好的设计。我有两个问题:
- 确保模板类型是
BaseClass的后代 - 如上所示转发构造函数参数。
非常感谢任何指导。
谢谢!
【问题讨论】: