Bonjour,
– Code C++ avec QT – J’ai un QList<XbeeNode> nodeList ; qui est initialisé à une taille de 200 items dans le constructeur de la classe qui le contient.
Ces items sont des objets qui contiennent la description « réseau » de capteurs Xbee.
Que je déclare un XbeeNode en « private » dans le .h ou que je le créé dans le heap avec new, le résultat est le même. Avant de sortir de la fonction qui affecte des valeurs aux attributs de mon nouvel objet XbeeNode avant de le stocker dans le QVector, ce dernier contient effectivement l’objet. Pourtant, quand je sors de cette méthode, le XbeeNode qui avait été placé dans le QVector a disparu !!
Avez-vous des idées de ce qui a pu se passer ? Je me disais que peut-être, en créant l’objet dans la méthode, il allait disparaitre du stack et que le QVector ne garderait qu’un pointeur sur un objet disparu en sortant de la méthode. Pourtant, même avec new ou avec l’objet déclaré en « private » dans le .h, c’est la même chose qui se produit, alors que l’objet ne peut être détruit que par delete (?). De plus, je ne touche pas au QVector ailleurs pour l’instant… Et le QVector insert un objet et non une référence (?).
Merci d’avance pour vos précieux conseils !
-----