std::vector<struct::event>::iterator it;
std::vector<struct::event>::iterator last=myvector.end();
for (it=myvector.begin(); it<=last; it++){
if(mysignal.declination<(*last).declination){
if (mysignal.declination>=(*it).declination && mysignal.declination<(*(it+1)).declination){
myvector.insert(it+1, mysignal);
break;
}
}
if (mysignal.declination>=(*last).declination){
myvector.push_back(mysignal);
break;
}
}
我有一个名为 myvector 的向量,其中包含按偏角排序的事件。现在我想在正确的位置将 mysignal 添加到此向量。但我总是在发生一些事件后出现段错误,这些事件指的是:if(mysignal.declination<(*last).declination)。我只是看不出有什么问题。