C++ 具有自定义数据类型的STL
我做错了什么C++ 具有自定义数据类型的STL,c++,stl,deque,custom-data-type,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; } #包
#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;
}
#包括
#包括
使用名称空间std;
结构mystruct{
整数1;
整数2;
};
int main(){
std:deque mydeque;
mydeque.编号1.向前推(77);
返回0;
}
您已将mydeque
声明为mystruct
s的容器。它最初是空的,当然没有名为number1
的公共成员
mydeque.push_front({77, 88});
deque类型为
mystruct
,您试图推送一个整数push\u front
是一种deque方法,而不是结构的编号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;
}
struct mystruct{
整数1;
整数2;
mystruct(intn1,intn2):number1(n1),number2(n2){}
};
int main(){
std:deque mydeque;
mydeque.push_front(mystruct(77,88));
返回0;
}
谢谢,这正是我想要的答案。