gpt4 book ai didi

c++ - 这段代码有什么问题?我无法从文件中读取 vector 。表达式 : vector subscript out of range

转载 作者:行者123 更新时间:2023-11-28 02:39:12 25 4
gpt4 key购买 nike

您好,我在使用此复制迭代器时遇到问题,我不确定如何正确编写复制迭代器。我收到这个错误:“表达式: vector 下标超出范围”。我的程序总是停在 std::copy 行。无论如何,我的编译器没有向我显示任何警告和其他错误。

 ifstream fin("aFileName", ios_base::in | ios_base::binary);
std::vector< aClass > aVector;
std::copy(std::istream_iterator<aClass, char>(fin),
std::istream_iterator<aClass, char>(), aVector.begin());

也许我程序的ofstream部分写得不好。但是我在这部分没有收到任何错误或任何警告消息。

ofstream fout("aFileName", ios_base::out | ios_base::binary);
std::copy(aVector.begin(), aVector.end(),
std::ostream_iterator<aClass, char>(fout, " "));

对不起我的英语。

最佳答案

vector 可以直接从迭代器构造。无需使用 std::copy

std::vector<aClass> aVector(std::istream_iterator<aClass>(fin), (std::istream_iterator<aClass>()));

关于c++ - 这段代码有什么问题?我无法从文件中读取 vector 。表达式 : vector subscript out of range,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26544570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com