Мне было интересно, знает ли кто-нибудь о методе библиотеки Qt, который может взять два QStringList и удалить все строки, содержащиеся в одном списке, из второго списка.
QStringList
В QList и QStringList 1006 *.
QList
нет библиотечной функции. Но вы можете написать свой собственный метод:
void remove(QStringList& list, const QStringList& toDelete){ QStringListIterator i(toDelete); while(i.hasNext()){ list.removeAll(i.next()); } }
Вы можете использовать метод QList::toSet() и сделать несколько my_set1.substract(my_set2), а затем вернуться назад QSet::toList().Но это всего лишь игра с кодом преобразования.Вам лучше самим кодировать логику с помощью заданных списков, это будет быстрее и не потребует бесполезного выделения памяти (даже временного)
QList::toSet()
my_set1.substract(my_set2)
QSet::toList()