如何修复c ++中的错误"vector iterators in range are from different containers"?
How to fix error "vector iterators in range are from different containers" in c++?
我不知道
问题出在哪里。程序在此函数中崩溃。你可以帮我吗?
我使用这两个函数进行基准测试(将容器速度与不同的使用技术进行比较(。我使用矢量"studentai",其中包含所有学生的姓名和姓氏。在矢量"silpni"是学生,最终得分为>5。当然,还有得分为 <5 的"geri"。此函数运行良好:
void atrinkimas_1(vector <duomenys>& studentai, vector <duomenys>& silpni, vector <duomenys>& geri)
{
sort(studentai.begin(), studentai.end(), tikrinimas_gal);
std::vector<duomenys>::iterator it = std::find_if(studentai.begin(),
studentai.end(), tikrinimas_5);
std::copy(it, studentai.end(), std::back_inserter(geri));
studentai.resize(studentai.size() - geri.size());
std: copy(studentai.begin(), it, std::back_inserter(silpni));
studentai.clear();
}
这不会:
void atrinkimas_2(vector <duomenys>& studentai, vector<duomenys> &silpni)
{
sort(studentai.begin(), studentai.end(), tikrinimas_gal);
std::vector<duomenys>::iterator it = std::find_if(studentai.begin(), studentai.end(), tikrinimas_5);
std::copy(it, studentai.end(), std::back_inserter(silpni));
studentai.resize(studentai.size() - silpni.size());
}
问题出在哪里?
通过调整studentai
的大小,您已经使it
无效。我猜错误在于it
不再指向studentai
。
相关文章:
- netcat command in c++
- Difference in displaying cv2 Mat
- C++ MFC Libraries in Travis CI
- 如何在OpenSSL中从configuration.h.in获取configuration.h
- 创建具有 new in 函数和"this is nullptr"异常的对象
- IN, OUT, INOUT Parameters
- 应用程序崩溃并显示"symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"
- 有人安装"IITB Simplecpp in mac"吗?
- 从 C 样式字符串中删除子字符串 "in place" 在C++代码中
- 如何修复"error: ‘_1’ was not declared in this scope"?
- Softmax Implementation in C++
- 将 out/in out 参数与 if/switch 的 init 语句一起使用
- IF-nesting in c++
- Gurobi GRBModel and GRBmodel in C++
- Tensorflow Hub in C++
- Centos7 g++ "to_string is not in a member of std"
- 如何修复c ++中的错误"vector iterators in range are from different containers"?
- 数组未加载 - "index out of range in objectAtIndex()"
- itertools.tee equivalent in Boost::Range?
- C++标准措辞:"through all iterators in the range"是否意味着顺序?