STL con un tipo di dati personalizzato
-
21-09-2019 - |
Domanda
Che cosa sto facendo di sbagliato?
#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;
}
Soluzione
push_front
è un metodo di deque non il numero1 della struttura di mystruct
..
Il modo giusto è:
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;
}
Altri suggerimenti
Il deque è di tipo mystruct
e si sta tentando di spingere un integer
.
hai dichiarare mydeque
come contenitore di mystruct
s. E 'inizialmente vuoto, e di certo non ha un membro pubblico denominata number1
.
mydeque.push_front({77, 88});
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow