C++ List swap()函数

C++ List swap()函数

C++列表的 swap() 函数将列表的内容与另一个相同类型的列表交换,但大小可以不同。

语法

void swap(list& x);

参数

x : 这是另一个要与给定列表交换的列表。

返回值

它不返回任何值。

错误:

当两个列表的类型不同时,会抛出错误。

示例1

让我们看一个简单的示例,当两个列表的类型和大小相同时。

#include <iostream>
#include<list>
using namespace std;
int main()
{

    std::list<char> li={'+','-','*','@'};
    list<char> li1={'j','a','v','a'};
    std::cout << "Initially,content of list li is :";
    for(list<char> :: iterator itr=li.begin();itr!=li.end();++itr)
    cout<<*itr;
    std::cout << '\n'<<"Initially,content of list li1 is :";
    for(list<char> :: iterator itr=li1.begin();itr!=li1.end();++itr)
    cout<<*itr;
    li.swap(li1);
    cout<<'\n';
    cout<<"After swapping, content of list li is :";
    for(list<char> :: iterator itr=li.begin();itr!=li.end();++itr)
    cout<<*itr;
    cout<<'\n';
    cout<<"After swapping, content of list li1 is :";
    for(list<char> :: iterator itr=li1.begin();itr!=li1.end();++itr)
    cout<<*itr;
    return 0;
}

输出:

Initially,content of list li is : +-*@
Initially,content of list li1 is : java
After swapping, content of list li is : java
After swapping, content of list li1 is : +-*@

在这个示例中,swap()函数将列表li的内容与列表li1交换。

示例2

让我们看一个简单的示例,当两个列表的类型不同时。

#include <iostream>
#include<list>
using namespace std;
int main()
{
   std::list<char> li={'P','H','P'};
    list<int> li1={1,2,3};
    li.swap(li1);
    cout<<'\n';
    return 0;
}

输出:

error : no matching call for list::swap(list&).

在这个示例中,两个列表是不同类型的。因此,函数 swap() 抛出一个错误,即没有匹配的列表类型进行交换。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程