STL具有自定义数据类型

时间:2009-12-24 05:40:09

标签: c++ stl deque custom-data-type

我做错了什么?

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

3 个答案:

答案 0 :(得分:6)

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

正确的方法是:

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

答案 1 :(得分:1)

deque的类型为mystruct,您正试图推送integer

答案 2 :(得分:0)

您已将mydeque声明为mystruct的容器。它最初是空的,当然没有名为number1的公共成员。

mydeque.push_front({77, 88});