Russian Qt Forum

Qt => Вопросы новичков => Тема начата: thechicho от Ноябрь 17, 2011, 13:25



Название: QList takeFirst(count)
Отправлено: thechicho от Ноябрь 17, 2011, 13:25
есть ли стандартная функция для взятия элементов из списка сначала?
что-то вроде:
Код
C++ (Qt)
thread->threadList << fullList.takeFirstElements(33);

сейчас у меня так:
Код
C++ (Qt)
QStringList fullList;
QStringList threadList;
 
for (int a = 0; a <= 33; a++)
   thread->threadList << fullList.takeFirst();


Название: Re: QList takeFirst(count)
Отправлено: Пантер от Ноябрь 17, 2011, 13:27
http://doc.qt.nokia.com/4.7-snapshot/qlist.html#mid


Название: Re: QList takeFirst(count)
Отправлено: thechicho от Ноябрь 17, 2011, 13:36
не, эта не берет, а копирует. мне надо, чтобы вырезала.


Название: Re: QList takeFirst(count)
Отправлено: Пантер от Ноябрь 17, 2011, 13:39
Тогда нет.


Название: Re: QList takeFirst(count)
Отправлено: thechicho от Ноябрь 17, 2011, 13:44
а сильно плохо в цикле takeFirst() вызывать? если допустим 100ни, 1000и раз нужно вызвать?
имеет смысл на mid(first, last) переделать, с расчетом каждый раз first и last? т.е. логика кода какбэ усложнится.
или забить и оставить как ща сделано?


Название: Re: QList takeFirst(count)
Отправлено: Пантер от Ноябрь 17, 2011, 13:48
Делай mid и удаляй.


Название: Re: QList takeFirst(count)
Отправлено: thechicho от Ноябрь 17, 2011, 13:58
кк, сенкс.