gpt4 book ai didi

c++ - 试图取消引用迭代器的段错误

转载 作者:太空宇宙 更新时间:2023-11-04 16:17:27 24 4
gpt4 key购买 nike

我正在尝试使用 std::max_element 查找 vector 的最大值。当我运行程序时,我得到一个段错误,我认为它与 std::end 越过 vector 的末尾有关?我尝试将其更改为 std::end(tempdata)-1) 但无济于事。

    auto max = std::max_element(std::begin(tempdata), std::end(tempdata));
std::ofstream maxcurrent("maxcurrent.txt", std::ios::app);
maxcurrent << v << std::setw(15) << *max << std::endl;

看过this answer我不明白为什么我的不起作用。

最佳答案

maxstd::end(tempdata) 时,它不会工作,如果您的 tempdata 为空,则会发生这种情况。

Iterator to the greatest element in the range [first, last). If several elements in the range are equivalent to the greatest element, returns the iterator to the first such element. Returns last if the range is empty.

source

关于c++ - 试图取消引用迭代器的段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21137476/

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