Seite 1 von 1

QHash als return

Verfasst: 12. August 2010 09:02
von gast23
Hi,

ich habe eine Funktion:

Code: Alles auswählen

QHash<QString,QString> foo() {

QHash<QString,QString> data;

data...


return data;

}
Ich würde eigentlich gerne den Hash auf dem Heap anlegen dies geht jedoch dank einiger Umstände nicht... ich habe leider keine Controlle wer den return wert erhält...

deshalb ist nun die Frage, werden dieser QHash und die Daten dann einfach copy per value zurück gegeben und entsteht zu 100% hier kein Speicherleck?

Das die Daten per value also kopiert werden ist in diesem Fall nicht schlimm... ich muss jedoch sicher sein, dass kein Speicherleck entsteht...

Verfasst: 12. August 2010 09:08
von upsala
Einfach gesagt: hier gibts kein new, also auch kein Speicherleck.

Verfasst: 12. August 2010 09:41
von gast23
Was hat es mit der Qt copy on write Optimierung aufsich?

Verfasst: 12. August 2010 09:49
von franzf
gast23 hat geschrieben:Was hat es mit der Qt copy on write Optimierung aufsich?
Das braucht dich nicht zu interessieren, denn Qt passt sicher auf dass es zu keinen Speicherlecks kommt. Wenn es dich einfach nur interessiert, findest du hier Infos:
http://doc.trolltech.com/4.6/implicit-sharing.html