Ich baue eine Qt 4.5-Anwendung unter Windows mit Visual Studio 2008. Wenn ich meine Anwendung im Debug-Modus ausführen und dann schließen, druckt Visual Studio die im Anschluss an das Ausgabefenster:Beim Schließen einer Qt 4.5-Anwendung meldet Visual Studio, dass es Speicherlecks erkannt hat
Erkannte Speicherlecks!
Dumping Objekte ->
{696512} normalen Block bei 0x01981AB0, 24 Bytes lang.
Daten: <> 00 CD CD CD 00 00 00 00 00 00 00 00 00 00 00 00
{696511} normaler Block bei 0x02E59B70, 12 Bytes lang.
Daten: < U2g U2g> B0 1A 98 01 E8 55 32 67 E8 55 32 67
Und die Ausgabe berichtet Hunderte solcher Blöcke. Ich habe dies besonders bei der Verwendung des Model/View-Frameworks von Qt 4 bemerkt. Hat Qt tatsächlich Speicherlecks oder gibt es Umstände, unter denen Visual Studio Lecks falsch ausgibt?
Möglicherweise gibt es auch die Möglichkeit, dass Ihr Code Speicherlecks hat ... – sth
Befreien Sie jede zugeordnete Ressource oder lassen Sie den Prozess einfach (in diesem Fall ist das Leck von Design - in der Regel aus Leistungsgründen)? –
Einer der Speicher "Gotcha" s Ich habe Leute gesehen ist, dass Modelle nicht von der Ansicht gehören. Es wäre in den meisten Fällen nicht sinnvoll, sie in Besitz der Ansicht zu haben, aber wenn Sie nicht darüber nachdenken, glauben Sie vielleicht, dass das Festlegen eines Modells für eine Ansicht die Ansicht als das übergeordnete Element des Modells festlegt. Dies könnte Speicherlecks verursachen. –