我知道这些迭代器问题已经被问过并回答了一千次,但是当我编译以下代码时,我仍然得到这个错误:
错误 C2440:“正在初始化”:无法从“std::_Vector_iterator<_Myvec>”转换为“cv::Vector<_Tp> *”
.
void iterate(vector<vector<cv::Point> >& contours){
Vector<Vector<cv::Point>>::iterator it = contours.begin();
for( int i = 0; i< contours.size(); i++ ){
if(contourArea(contours[i])>1000){
it++;
}else{
contours.erase(it);
}
}
}
我看不出这段代码有什么问题。新迭代器的向量模板类型与我从中获取迭代器的向量相同。