我在做什么错了?

#include <iostream>
#include <deque>
using namespace std;

struct mystruct {
       int number1;
       int number2;
};

int main() {
    std::deque<mystruct> mydeque;

    mydeque.number1.push_front(77);

    return 0;
}
有帮助吗?

解决方案

push_front是双端队列的方法不是结构mystruct的数字1 ..

正确的方法是:

struct mystruct {
       int number1;
       int number2;
mystruct(int n1, int n2) : number1(n1), number2(n2){}
};

int main() {
    std::deque<mystruct> mydeque;

    mydeque.push_front(mystruct(77,88));

    return 0;
}

其他提示

在双端队列为类型mystruct的和你正在试图推动一个integer

您已经声明mydeque作为mystructs的容器。它最初是空的,肯定没有一个公共成员称为number1

mydeque.push_front({77, 88});
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top