Seite 1 von 1

[gelöst] struct in QList

Verfasst: 3. August 2009 11:38
von nuke160
Hallo, merkwürdigerweise kann ich keine Strukturen in einer QList speichern.
Hier ein Minimalbeispiel.

Code: Alles auswählen

#include <QList>

struct structure
{
   int value;
};

...

QList<struct structure> myList;
struct structure myStruct;
myStruct.value = 5;
myList.push_back(myStruct);
1. Es gibt keine Fehlermeldung.
2. Beim Debuggen findet man die Problematik. myList beinhaltet nach dem push_back() zwar ein Element (vorher keins), der Wert des Elements ist jedoch nicht 5 sondern zufällige Zahl (uninitialisiert).

Irgendeine Idee?

Thx Nuke160

Verfasst: 3. August 2009 12:31
von Christian81
Dein Debugger lügt. Gibt es mal nach stdout aus und Du wirst sehen dass er lügt.

Debugger lügt?

Verfasst: 3. August 2009 12:42
von nuke160
Hi.

Ich habs mal mit QVector versucht und dort klappt es problemlos (Auch beim Debuggen).

In der Doku von QList steht auch drin, dass QList nur für Standardtypen und QT-Typen (Also QChar, QWidget, ...) verwendet werden sollte, bei anderen Typen ist QVector zu bevorzugen.

So wie ichs verstanden habe, hat es aber nur mit Speichermanagement zu tun, grundsätzlich müsste beides funktionieren.

nuke160

Verfasst: 3. August 2009 12:46
von Christian81
Glaub mir einfach - Dein Debugger lügt :)
Habs extra nochmal ausprobiert.

Verfasst: 3. August 2009 13:52
von nuke160
Jup. Blöder Debugger.

Thx nuke160