如何解决如何在不知道类型T的情况下将模板化对象<T>存储在向量中?
我无法解决此问题。可以这么说,我有一个类A,其成员是对象SomeClass<T>
的向量。还有一个模板化方法add_some_class_to_vector<T>
,它向向量添加了SomeClass<T>
的新实例。
所以我目前的流程是:
- 创建A的新实例。
- 致电
add_some_class_to_vector<T>
问题是,向量不知道T是什么类型。
在没有模板类定义A的情况下,如何告诉成员向量它将使用什么类型名称?
class A {
public:
//fields
std::vector<SomeClass<T>> vector_of_some_class; // doesn't know what T is
//methods
template<typename T>
void add_some_class_to_vector();
vector_of_some_class.push_back(SomeClass<T>());
};
int main() {
A a()
a.add_some_class_to_vector<int>();
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。