Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/153.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;:将元素从队列的前面移到后面_C++_Queue_Frontend - Fatal编程技术网

C++ C++;:将元素从队列的前面移到后面

C++ C++;:将元素从队列的前面移到后面,c++,queue,frontend,C++,Queue,Frontend,我正在尝试编写一个名为move_to_rear的函数,该函数将队列前面的元素移动到队列后面,然后使队列中的第二个元素成为前面的元素。我可以用几种不同的方法来做这件事,但我的同学告诉我,他只用推、前推和弹出来做 他是如何只用这三个函数来完成这样一件事的?也许我遗漏了一些东西,但由于这是一个队列而不是堆栈,答案很简单: const Item first = q.front(); //getting the first q.pop(); //removing him q.push(first); //

我正在尝试编写一个名为
move_to_rear
的函数,该函数将队列前面的元素移动到队列后面,然后使队列中的第二个元素成为前面的元素。我可以用几种不同的方法来做这件事,但我的同学告诉我,他只用推、前推和弹出来做


他是如何只用这三个函数来完成这样一件事的?

也许我遗漏了一些东西,但由于这是一个队列而不是堆栈,答案很简单:

const Item first = q.front(); //getting the first
q.pop(); //removing him
q.push(first); //adding him back to the queue (which will be in the rear)
只是为了确保您理解:
队列弹出队列中的第一个项目,并将项目推到后面。先进先出=先进先出。 Stack弹出列表中的最后一个项目,并将项目推到后面。后进先出=后进先出。
first
的值必须是const,因为
front
返回引用,并且在作用域关闭时可能是dot not push。

也许我遗漏了什么,但由于它是队列而不是堆栈,所以答案很简单:

const Item first = q.front(); //getting the first
q.pop(); //removing him
q.push(first); //adding him back to the queue (which will be in the rear)
只是为了确保您理解:
队列弹出队列中的第一个项目,并将项目推到后面。先进先出=先进先出。 Stack弹出列表中的最后一个项目,并将项目推到后面。后进先出=后进先出。
first
的值必须是const,因为
front
返回引用,并且在作用域关闭时可能是dot not push。

也许我遗漏了什么,但由于它是队列而不是堆栈,所以答案很简单:

const Item first = q.front(); //getting the first
q.pop(); //removing him
q.push(first); //adding him back to the queue (which will be in the rear)
只是为了确保您理解:
队列弹出队列中的第一个项目,并将项目推到后面。先进先出=先进先出。 Stack弹出列表中的最后一个项目,并将项目推到后面。后进先出=后进先出。
first
的值必须是const,因为
front
返回引用,并且在作用域关闭时可能是dot not push。

也许我遗漏了什么,但由于它是队列而不是堆栈,所以答案很简单:

const Item first = q.front(); //getting the first
q.pop(); //removing him
q.push(first); //adding him back to the queue (which will be in the rear)
只是为了确保您理解:
队列弹出队列中的第一个项目,并将项目推到后面。先进先出=先进先出。 Stack弹出列表中的最后一个项目,并将项目推到后面。后进先出=后进先出。
first
的值必须是const,因为
front
返回引用,并且在作用域关闭时可能是dot not push。

您是如何做到的?显示您的代码。根据定义,队列是先进先出的,因此
pop
删除队列前面的元素,并
push
将元素推到队列后面。我想你把队列和堆栈搞混了。你是怎么做到的?显示您的代码。根据定义,队列是先进先出的,因此
pop
删除队列前面的元素,并
push
将元素推到队列后面。我想你把队列和堆栈搞混了。你是怎么做到的?显示您的代码。根据定义,队列是先进先出的,因此
pop
删除队列前面的元素,并
push
将元素推到队列后面。我想你把队列和堆栈搞混了。你是怎么做到的?显示您的代码。根据定义,队列是先进先出的,因此
pop
删除队列前面的元素,并
push
将元素推到队列后面。我想你把队列和堆栈混淆了。哇,我一直在想堆栈,这就是混淆的原因。谢谢哇,我一直在想stacks,这就是混乱的根源。谢谢哇,我一直在想stacks,这就是混乱的根源。谢谢哇,我一直在想stacks,这就是混乱的根源。谢谢