使用Queue类对火车车厢进行排队

Using Queue class to queue carriages of a Train - C++

本文关键字:排队 火车 Queue 使用      更新时间:2023-10-16

我正在尝试制作一个模拟器类,它将使用队列将车厢从火车添加到队列中,因此它将成为车厢队列。Carriage也是train类的数据类型。

我将使用一种方法在列车到达时排队,将它们添加到不同的队列中。我还将有一种方法,一旦货物卸下,就可以让火车离开队列。

我有一个Train类,它有一个私有变量:

LinkedList<Carriage> *list;

队列类有一个私有变量:

LinkedList<dataType> *list;

在我的演示文件中,我调用:

Train* train1; //declare a train.
train1 = new Train(arr); //instantiate train with an array of integers
Queue<Carriage> queue1;  //declare a queue.
queue1 = new Queue<Carriage>(train1); //instantiate queue with train data.

我的队列类有问题,我不太确定如何实现它。

My Queue class.h:

template <typename dataType> //dataType
class Queue
{
public:
           Queue();
       Queue(dataType arr[]);
           ~Queue();
           void pop();
           void push(dataType data);
private:
    LinkedList<dataType> *list;
};
#include "Queue.template"
//there is also a namespace and a macroguard, left them out of this.

编辑-没有添加足够的信息。

在上面的演示文件代码中,我希望能够调用queue1 = new Queue(train1);

当我这样做的时候,我得到错误,所以我知道我做错了我的构造函数,因为它们都是链表,我需要使用循环来分配车厢到队列吗?

我需要帮助的是让火车车厢排队。

谢谢:)

将类型为LinkedList的参数传递给接受datatype数组参数的构造函数,从而导致错误。

但是,您可以循环遍历每个train1元素,并将其pushQueue

值得注意的是,pushpopstack的函数名。Queueenqueuedequeue