[Qt4.20] QModelIndexList Destruktor

Alles rund um die Programmierung mit Qt
Antworten
Esleborn
Beiträge: 265
Registriert: 27. Januar 2005 01:23
Wohnort: Baden-Würtenberg
Kontaktdaten:

[Qt4.20] QModelIndexList Destruktor

Beitrag von Esleborn »

hi,
ich hab ein Problem, das sich mir einfach nicht klären will...
folgender Code soll aufgerufen werden, wobei mp_view ein eigenes Widget, abgeleitet von QAbstractItemView, ist:

Code: Alles auswählen

QModelIndexList indexList ( mp_view->selectionModel ( )->selectedIndexes ( ) );
if ( indexList.isEmpty ( ) )
   indexList << mp_view->currentIndex ( );

// mache etwas mit den Elementen der Liste (natürlich ohne diese oder di e Liste zu verändern)
sobald der Destruktor der QModelIndexList aufgerufen wird, stürzt das Programm ab, dagegen tut folgender Code einwandfrei (aber ist halt nicht was ich will):

Code: Alles auswählen

QModelIndexList indexList;
indexList << mp_view->currentIndex ( ) << mp_view->currentIndex ( );

// mache etwas mit den Elementen der Liste (natürlich ohne diese oder di e Liste zu verändern)
Kann mir einer erklären, warum das eine Mal der Destrukor durchläuft, das andere Mal nicht? [unabhängig von der Größe von mp_view->selectionModel ( )->selectedIndexes ( )]

Thx
Elgrimm

PS: Die Indexes die von mp_view->selectionModel ( )->selectedIndexes ( ) zurückgegeben werden, sind alle korrekt und valid
Glaube an eine Lösung, nur dann kannst du auch eine finden.
Volker
Beiträge: 343
Registriert: 30. Juni 2005 05:27

Beitrag von Volker »

Kann Dir zwar nicht erklären, woran das liegt, aber ich hatte das Problem mit Qt 4.0 auch schon mal. Irgendwann hatte es sich dann erledigt - k.A. wieso - und jetzt mit Qt 4.4.3 hab ich's wieder.

Hat mittlerweile evtl. jemand rausgefunden woran es liegt?

Selbes Problem 1
Selbes Problem 2Selbes Problem 3
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel
Volker
Beiträge: 343
Registriert: 30. Juni 2005 05:27

Beitrag von Volker »

Evtl. kann ich mir die Antwort endlich selbst geben! :-)

Scheinbar hängt es mit den Runtime Bibliotheken von Visual Studio zusammen. Übersetze ich mein Programm mit Multithreaded Debug DLL, stürzt es nicht ab. Mit Multithreaded Debug, dagegen schon.
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel
Antworten