我想创建一个参数类型的对象向量,其中每个对象都有不同的专用类型。例子:
template<typename A>
struct BaseAtom
{
A _a;
};
struct AtomA : BaseAtom<int>
{};
int main()
{
std::vector<BaseAtom*> v; // (1)
AtomA a;
v.push_back(&a);
}
从逻辑上讲,这不起作用,因为 BaseAtom 是模板类型,并且模板参数未在 (1) 中指定。如何创建具有此特征的向量?