C++ STL中的queue::swap()


在本文中,我们将讨论C++ STL中queue::swap()函数的工作原理、语法和示例。

什么是C++ STL中的queue?

队列是一个简单的序列或数据结构,定义在C++ STL中,以FIFO(先进先出)的方式插入和删除数据。队列中的数据以连续的方式存储。元素插入到末尾,从队列的开头删除。在C++ STL中,已经有一个预定义的队列模板,以类似于队列的方式插入和删除数据。

什么是queue::swap()?

queue::swap()是C++ STL中的一个内置函数,声明于头文件中。queue::swap()用于交换队列容器的内容。此函数接受一个参数,即另一个队列容器,我们希望与关联的队列容器交换内容。

语法

myqueue1.swap(myqueue2);

此函数接受一个参数,即第二个队列容器,我们希望与关联的队列交换内容。

返回值

此函数不返回任何内容。

示例

Input: queue<int> odd = {1, 3, 5};
      queue<int> eve = {2. 4. 6};
Output:
      Odd: 2 4 6
      Eve: 1 3 5

示例

 示例

#include <iostream>
#include <queue>
using namespace std;
int main(){
   queue<int> Queue_1, Queue_2;
   for(int i=0 ;i<=5 ;i++){
      Queue_1.push(i);
   }
   for(int i=5 ;i<=10 ;i++){
      Queue_2.push(i);
   }
   //call swap function
   Queue_1.swap(Queue_2);
   cout<<"Element in Queue_1 are: ";
   while (!Queue_1.empty()){
      cout << ' ' << Queue_1.front();
      Queue_1.pop();
   }
   cout<<"\nElement in Queue_2 are: ";
   while (!Queue_2.empty()){
      cout << ' ' << Queue_2.front();
      Queue_2.pop();
   }
}

输出

如果我们运行以上代码,它会生成以下输出 -

Element in Queue_1 are: 5 6 7 8 9 10
Element in Queue_1 are: 0 1 2 3 4 5

更新于: 06-Mar-2020

693次浏览

开启你的职业生涯

完成课程,获得认证

开始学习
广告