ifstreams矢量

时间:2009-09-28 19:41:07

标签: c++ vector ifstream

如何创建和操作ifstreams的矢量?

这样的事情,除了这不起作用:

vector<ifstream> Files(10, ifstream());
Files[0].open("File");

2 个答案:

答案 0 :(得分:9)

您无法将ifstream存储在std::vector中,因为您无法创建它们的副本。

您可以通过存储指针来完成类似的操作。在这种情况下,我建议您使用某种指针容器来确保删除这些ifstream。

答案 1 :(得分:3)

我能想到的最接近的是vector<shared_ptr<ifstream> > - 你不能将ifstream放在向量中,因为它们不是可复制构造的。