0

我究竟做错了什么?

#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;
}
4

3 回答 3

6

push_front是一种 deque 方法,而不是结构的 number1 mystruct..

正确的方法是:

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;
}
于 2009-12-24T05:44:49.340 回答
1

deque 是类型mystruct,您正在尝试推送integer.

于 2009-12-24T05:43:17.613 回答
0

您已声明mydequemystructs 的容器。它最初是空的,当然没有名为number1.

mydeque.push_front({77, 88});
于 2009-12-24T05:42:56.037 回答