Kann sich ein Pointer auf eine QList ändern?
Verfasst: 17. Februar 2021 18:30
Hallo,
ich verwende in meiner Anwendung einen Pointer auf eine QList:
QList<class> *m_list = new QList<class>
Der Pointer wird in verschiedene Funktionen und Klassen weitergegeben, damit ich immer Zugriff auf die gleiche Liste habe. Zur Laufzeit kommen Elemente zur Liste hinzu und werden gelöscht. Muss ich mir sorgen machen, dass der Pointer irgendwann auf eine andere Adresse zeigt, da der Speicher an der ursprünglichen Adresse nicht mehr ausreicht?
Ich kenne z.B. von Pointer auf arrays, dass diese immer auf der erste Element des arrays zeigen. Ich stelle mir nun 2 Arrays vor, die direkt aufeinander folgen im Speicher. Wenn man die Größe des 1. Arrays ändern würde, dann hätten die letzten Elemente des ersten Arrays und die ersten Elemente des zweiten Arrays gleiche Adressen. Wäre also problematisch.
Könnt ihr mir sagen, ob das bei QList unkritisch ist? Ich stelle mir das dort ähnlich vor. Allerdings habe ich die Hoffnung, dass die QList deutlich schlauer ist und das besser verwaltet. Aber irgendwo müssen zusätzlich Elemente ja gespeichert werden.....
Könnt ihr mir die Frage beantworten und evtl. das Thema noch etwas erläutern? Bzw. auch gerne entsprechende Links zu Erklärungen schicken....
Danke im voraus!
ich verwende in meiner Anwendung einen Pointer auf eine QList:
QList<class> *m_list = new QList<class>
Der Pointer wird in verschiedene Funktionen und Klassen weitergegeben, damit ich immer Zugriff auf die gleiche Liste habe. Zur Laufzeit kommen Elemente zur Liste hinzu und werden gelöscht. Muss ich mir sorgen machen, dass der Pointer irgendwann auf eine andere Adresse zeigt, da der Speicher an der ursprünglichen Adresse nicht mehr ausreicht?
Ich kenne z.B. von Pointer auf arrays, dass diese immer auf der erste Element des arrays zeigen. Ich stelle mir nun 2 Arrays vor, die direkt aufeinander folgen im Speicher. Wenn man die Größe des 1. Arrays ändern würde, dann hätten die letzten Elemente des ersten Arrays und die ersten Elemente des zweiten Arrays gleiche Adressen. Wäre also problematisch.
Könnt ihr mir sagen, ob das bei QList unkritisch ist? Ich stelle mir das dort ähnlich vor. Allerdings habe ich die Hoffnung, dass die QList deutlich schlauer ist und das besser verwaltet. Aber irgendwo müssen zusätzlich Elemente ja gespeichert werden.....
Könnt ihr mir die Frage beantworten und evtl. das Thema noch etwas erläutern? Bzw. auch gerne entsprechende Links zu Erklärungen schicken....
Danke im voraus!