Ich versuche QTextStream
zu verwenden, um von einem QString
zu lesen. Da der Konstruktor die folgende Signatur hat:Besitz von QString mit QTextStream
QTextStream(QString *string, QIODevice::OpenMode openMode = QIODevice::ReadWrite)
(siehe the documentation)
Da der Konstruktor einen rohen Zeiger übergeben wird, frage ich mich, ob die QTextStream
Eigentum an der QString
nimmt oder wenn ich es zu verwalten haben in Mein Code, um sicherzustellen, dass das Objekt QString
nach dem Objekt QTextStream
gelöscht wird.
Ich habe keine Informationen weder in der Dokumentation noch in Suchmaschinen (z. B. Google, duckduckgo) gefunden. Alle Beispiele, die ich gefunden habe, zeigen eine QString
und eine QTextStream
, die die gleiche Lebensdauer haben (lokale Variablen in der gleichen Funktion), also bin ich nicht sicher, was passiert, wenn die zwei Objekte unterschiedliche Lebensdauern haben.
Ich habe 'QTextStream' nicht mit diesem speziellen Konstruktor verwendet. Ich denke jedoch, dass das "QTextStream" -Objekt lediglich den "QString" zum Lesen oder Schreiben verwendet. Es übernimmt nicht den Besitz des 'QString'. –