Biblioteca de colas de C ++ - función queue ()

Descripción

El constructor de movimientos de C ++ std::queue::queue() construye el contenedor con el contenido de otro utilizando la semántica de movimiento.

Declaración

A continuación se muestra la declaración para el constructor de movimientos std :: queue :: queue () desde el encabezado std :: queue.

C ++ 11

queue( queue&& other);

Parámetros

other - Otro objeto de cola del mismo tipo.

Valor devuelto

El constructor nunca devuelve valores

Excepciones

Esta función miembro nunca lanza una excepción.

Complejidad del tiempo

Lineal es decir O (n)

Ejemplo

El siguiente ejemplo muestra el uso de la función std :: queue :: queue ().

#include <iostream>
#include <queue>
#include <list>

using namespace std;

int main(void) {
   auto it = {1, 2, 3, 4, 5};
   queue<int> q1(it);
   queue<int>q2(move(q1));

   cout << "Contents of q1 after move operation" << endl;
   while (!q1.empty()) {
      cout << q1.front() << endl;
      q1.pop();
   }
   
   cout << endl << endl;

   cout << "Contents of q2 after move operation" << endl;
   while (!q2.empty()) {
      cout << q2.front() << endl;
      q2.pop();
   }

   return 0;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

Contents of q1 after move operation
Contents of q2 after move operation
1
2
3
4
5