Ich entwickle einen einfachen Prototyp mit qt Schöpfer.Valgrind Problem mit QDialog mit Qt Designer
Ich habe Designer verwendet, um meine Fenster zu entwerfen.
Sagen Sie uns, dass das Hauptfenster ein Menü mit einer Option namens "Suspend" hat. Wenn diese Option ausgewählt ist, wird es das Verfahren MainWindow::on_actionSuspend_triggered()
deren vereinfachte Implementierung genannt wie folgt fortgesetzt werden:
void MainWindow::on_actionSuspend_triggered()
{
SuspendDialog suspend_dialog(this);
suspend_dialog.setModal(true);
auto status = suspend_dialog.exec();
return;
}
Die SuspendDialog
mit Designer angegeben wurde, wird es von QDialog
Klasse abgeleitet und es ist sehr einfach (drei Tasten ein Kombinationsfeld und ein Drehfeld Diese Klasse reserviert keinen Speicher
Jetzt, wenn ich Valgrind in Qtcreator zum Überprüfen der Speichernutzung ausführen, erhalte ich zwei Probleme des Typs Mismatched free()/delete/delete []
.Einiges Bizarrus ist, dass die beiden Probleme die gleiche Zeile verweist , die am Ende des Destruktors SuspendDialog
ist, dessen Implementierung ist:
SuspendDialog::~SuspendDialog()
{
delete ui;
}
Und das wurde automatisch von Qt Designer generiert.
Meine Frage ist: Ist das ein falscher Positiv von Valgrind oder mache ich etwas falsch?
Vielen Dank im Voraus
die Aufgabe hat nichts mit dem die meisten Tags aber Qt zu tun. Ich dachte auch, ich könnte den Text korrigieren, aber dann entschied ich mich nicht: zu viel. – AlexanderVX