假设我有一个这样的节点:
struct node{
int a;
int b;
}
现在我想在cpp中创建一个队列结构。如果数据类型是int,那么我们可以通过这种方式轻松完成:
queue<int> a;
我们还可以推送或弹出这样的元素:a。 push_back(12)或a。弹出(12)
但是在早期的情况下,当用户定义out数据类型时,我们如何制作这样的队列并从中推送或弹出elemeqnts?
答案 0 :(得分:3)
在容器之类的队列中保存非{POD类似{em(例如)}或struct
class
答案 1 :(得分:1)
如果你有
struct node{
int a;
int b;
};
std::queue<node> q;
您可以使用push
,如下所示:
q.push({ 11, 12 });
这会增加一个node
,其中a = 11且b = 12。
只要可以进行复制列表初始化,就可以工作,就像在这种情况下一样。否则你必须使用q.push(node{ 11, 12 });
答案 2 :(得分:1)
$data = Input::all();
答案 3 :(得分:-4)
使用队列a;制作节点类型的对象并使用函数a.push_back() a.pop_front()分别推送和弹出。也不要忘记#include queue。