[Qt] Qvector

Résolu
DrCrow Messages postés 416 Statut Membre -  
DrCrow Messages postés 416 Statut Membre -
Salut.
j'ai un soucis en Qt.
création et modification d'un QVector de type (Widget) QPushButton.
voici le code tou court :

QPushButton bout("Test");
QVector<QPushButton> bout2;
bout2.push_back(&bout);

voici le rapport de la compilation:
no matching function for call to 'QVector<QPushButton>::push_back(QPushButton*)'
Baa, des éxplication? et aussi une réctification ?
A voir également:

2 réponses

loupius Messages postés 789 Statut Membre 148
 
void QVector::push_back (const T& value)
Une construction classique:
QVector<QPushButton*> bout2;
bout2.push_back(new QPushButton("Test"));
Note que la doc de Qt indique que cette fonction n'est là que pour la compatibilité STL; utiliser 'append' est plus dans l'esprit de Qt.
Bonne continuation.
1
DrCrow Messages postés 416 Statut Membre 19
 
Merci Bcp frère Codeur ^^
0
Char Snipeur Messages postés 10112 Statut Contributeur 1 299
 
tssss.....
Bien entendu que le compilateur râle, et je suis daccord avec lui.
ton vecteur est de type objet, et tu lui donnes un type pointeur sur objet.
soit tu ajoute une étoile * dans la définition de bout2, soit tu vire le "&".
0
DrCrow Messages postés 416 Statut Membre 19
 
ouéoué ^^ mais je crois que c'était une faute de frappe, le & était sencé remplacé l'allocation de bout, que j'ai changé au dernier moment, donc....c'est pas grave.
mais maintenant, il me pose des truc de droit d'accés ou je sais pa quoi .o_O
error: 'QPushButton::QPushButton(const QPushButton&)' is private
0