1、交换两个容器指定位置的元素:iter_swap()
#define debug qDebug()<<
int main(int argc, char *argv[])
{
QList<int> list1,list2;
QRandomGenerator * rander = QRandomGenerator::global();
for (int var = 0; var < 3; ++var)
{
list1 << rander->bounded(100);
list2 << rander->bounded(100);
}
debug list1;
debug list2;
debug endl;
std::iter_swap(list1.begin() + 1,list2.begin() + 1);
debug list1;
debug list2;
}
交换两容器的第二个值。
2、批量交换容器元素:swap_ranges()
#define debug qDebug()<<
int main(int argc, char *argv[])
{
QList<int> list1,list2;
QRandomGenerator * rander = QRandomGenerator::global();
for (int var = 0; var < 3; ++var)
{
list1 << rander->bounded(100);
list2 << rander->bounded(100);
}
list2 << 996;
debug list1;
debug list2;
debug endl;
std::swap_ranges(list1.begin(),list1.end(),list2.begin());
debug list1;
debug list2;
}
序列1和序列2从起始元素进行交换。