对于swap()函数的总结

来源自百度百科

计算机中swap函数很多,比如字符串交换(swap)
swap操作实现交换两个容器内所有元素的功能。要交换的容器的类型必须匹配: 必须是相同类型的容器,而且所存储的元素类型也必须相同。调用了swap函数后,右操作数原来存储的元素被存放在左操作数中,反之亦然。
vector<string> svec1(10); //vector vith 10 elements
vector<string> svec2(24); //vector with 24 elements
svec1.swap(svec2);
执行swap后,容器svec1中存储24个string类型的元素,而svec2则存储10个元素。
关于swap的一个重要问题在于:该操作不会删除或插入任何元素,而且保证在常量时间内实现交换。由于容器内没有移动任何元素,因此迭代器不会失效。

猜你喜欢

转载自www.cnblogs.com/awangkuo/p/12534310.html
今日推荐