Название: Работа с QList, добавление в начало списка Отправлено: Tirex от Апрель 09, 2006, 21:56 Объявил такой список:
struct top10players { QString name; int score; int ptime; }; QList<top10players> top10p_cs; QList<top10players> top10p_pz; в процедуре прохожусь по списку: void settings_file::CheckTop10(int game_time) { if (top10p_cs.size()!=0) { for(int i=0;i<(top10p_cs.size());i++) { //после проверки в цикле если время лучше if (top10p_cs.ptime>game_time) { top10players p; p.name=Profiles[curr_player_idx].name; p.ptime=game_time; //пытаюсь добавить его впереди этой позиции //top10p_cs.prepend(p); //top10p_cs.insert(i,p); //здесь виснет } } }else { top10players p; p.name=Profiles[curr_player_idx].name; p.ptime=game_time; top10p_cs.push_back(p); } } Хотя если в том месте сделать top10p_cs.append(p) все нормально. Что не так делаю? Название: Работа с QList, добавление в начало списка Отправлено: Steven_Orko от Апрель 09, 2006, 22:48 Скажи, это ошибка, или так надо? Ты два раза пытаешься добавить в список одно и тоже...
Код:
Не пробывать продебажить insert, в каком месте он именно виснет? Скорее всего в каком-то бесконечном цикле... Название: Работа с QList, добавление в начало списка Отправлено: Tirex от Апрель 10, 2006, 06:04 Цитировать Скажи, это ошибка, или так надо? и не то и не другое, я просто пробовал и insert и prepend. и тот и тот виснет а append в том же месте нет. Цитировать Не пробывать продебажить insert, в каком месте он именно виснет? буду рад если скажете как это сделать. пишу под win в code::blocks. Название: Работа с QList, добавление в начало списка Отправлено: Admin от Апрель 10, 2006, 09:06 возможно дело в том что ты прямо в цикле
for(int i=0;i<(top10p_cs.size());i++) пытаешся вставить элементы top10p_cs.insert(i,p); как то это не правильно Название: Работа с QList, добавление в начало списка Отправлено: Tirex от Апрель 10, 2006, 13:56 всем спасибо за помощь. разобрался.
|