如何创建和操作ifstreams的矢量?
这样的事情,除了这不起作用:
vector<ifstream> Files(10, ifstream());
Files[0].open("File");
答案 0 :(得分:9)
您无法将ifstream
存储在std::vector
中,因为您无法创建它们的副本。
您可以通过存储指针来完成类似的操作。在这种情况下,我建议您使用某种指针容器来确保删除这些ifstream。
答案 1 :(得分:3)
我能想到的最接近的是vector<shared_ptr<ifstream> >
- 你不能将ifstream
放在向量中,因为它们不是可复制构造的。