关闭

list::swap函数

124人阅读 评论(0) 收藏 举报

void swap (list& x);

Swap content
Exchanges the content of the container by the content of x, which is another list of the same type. Sizes may differ.

After the call to this member function, the elements in this container are those which were in x before the call, and the elements of x are those which were in this. All iterators, references and pointers remain valid for the swapped objects.

Notice that a non-member function exists with the same name, swap, overloading that algorithm with an optimization that behaves like this member function.

Whether the container allocators are also swapped is not defined, unless in the case the appropriate allocator traitindicates explicitly that they shall propagate.

Another list container of the same type as this (i.e., with the same template parameters, T and Alloc) whose content is swapped with that of this container.

下面看一个例子:


// swap lists
#include <iostream>
#include <list>

int main ()
{
  std::list<int> first (3,100);   // three ints with a value of 100
  std::list<int> second (5,200);  // five ints with a value of 200

  first.swap(second);

  std::cout << "first contains:";
  for (std::list<int>::iterator it=first.begin(); it!=first.end(); it++)
    std::cout << ' ' << *it;
  std::cout << '\n';

  std::cout << "second contains:";
  for (std::list<int>::iterator it=second.begin(); it!=second.end(); it++)
    std::cout << ' ' << *it;
  std::cout << '\n';

  return 0;
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:42411次
    • 积分:2515
    • 等级:
    • 排名:第14650名
    • 原创:215篇
    • 转载:20篇
    • 译文:0篇
    • 评论:2条
    文章分类
    最新评论