Gestion de cola 6 | Sololearn: Learn to code for FREE!

0

Gestion de cola 6

Hola, ¿alguien podria ayudarme con este problema del modulo 6? Seguimos desarrollando nuestro sistema de gestión de colas que hicimos en el módulo anterior. Se te pide que añadas una nueva funcionalidad: añadir dos colas juntas. El resultado debe ser una nueva cola, donde los elementos de la primera cola vienen primero, seguidos por los elementos de la segunda cola. Dada la clase Queue, sobrecarga el operador +, para que el código en main funcione y añada con éxito dos colas. #include <iostream> using namespace std; class Queue { int size; int* queue; public: Queue() { size = 0; queue = new int[100]; } void add(int data) { queue[size] = data; size++; } void remove() { if (size == 0) { cout << "Queue is empty"<<endl; return; } else { for (int i = 0; i < size - 1; i++) { queue[i] = queue[i + 1]; } size--; } } void print() { if (size == 0) { cout << "Queue is empty"<<endl; return; } for (int i = 0; i < size; i++) { cout<<queue[i]<<" <- "; } cout << endl; } //tu código va aquí class Queue1 { int size; int *queue; public: Queue1(Queue size) : size(); { } ; }; int main() { Queue q1; q1.add(42); q1.add(2); q1.add(8); q1.add(1); Queue q2; q2.add(3); q2.add(66); q2.add(128); q2.add(5); Queue q3 = q1+q2; q3.print(); return 0; } Este es mi codigo, pero sinceramente no comprendo muy bien la composicion de funciones y la sobrecarga de operadores.

c++

1/23/2022 1:25:01 PM

Facundo Toro

1 Answer

New Answer

0

Try using obj: Queue operator+(Queue &obj) { Queue combind; for(int i=0;i<this->size;i++) { combind.add(this->queue[i]); } for(int i=0;i<obj.size;i++) { combind.add(obj.queue[i]); } return combind; }