3
谁能告诉我向量插入程序崩溃程序
为什么这会导致我的程序崩溃?假设它是这样的,所以t矢量中的所有元素都位于(y +高度)的位置。
编辑:崩溃的行中与“插入”在他们。
void createDrawOrder(vector<Thing*> t, vector<int> *order) {
int min = t[0]->y + t[0]->height;
int max = t[0]->y + t[0]->height;
vector<int>::iterator it;
it = order->begin();
order->push_back(0);
for (int i = 1; i < (int) t.size(); i++) {
if ((t[i]->y + t[i]->height) < min) {
min = (t[i]->y + t[i]->height);
order->insert(it, i);
}
else if((t[i]->y + t[i]->height) >= min && (t[i]->y + t[i]->height) < max){
int tempsize = (int) order->size();
for (int j = 0; j < tempsize; j++){
if((t[i]->y + t[i]->height) <= (t[(*order)[j]]->y + t[(*order)[j]]->height)){
order->insert(it + j, i);
}
}
}
else if ((t[i]->y + t[i]->height) >= max) {
max = (t[i]->y + t[i]->height);
order->push_back(i);
}
}
}//end method max
工作。我会尽快接受这个答案。^_^ – William 2010-10-01 03:31:26
@William:谢谢:) – Jacob 2010-10-01 03:34:05