diff options
author | Marc Mutz <[email protected]> | 2024-12-31 10:03:41 +0100 |
---|---|---|
committer | Marc Mutz <[email protected]> | 2025-01-02 07:50:57 +0100 |
commit | 0da2c2c4ef2219967db87021eece2a60b6e207af (patch) | |
tree | fc68cf81cb463b075f1855efd59bfed8b4789c9a | |
parent | 9c099ef942216d01261c26b60e3727a2a467f12a (diff) |
sqlbrowser example: use unique_ptr to hold m_ui
The old code used manual memory mangement (raw new/delete) to
(de)allocate the Ui struct. This is so 80s.
Use an owning smart pointer to manage the memory. Ordinarily, this
would have been QScopedPointer, but seeing as that doesn't have a
create() method to hide the raw new, use std::unique_ptr and
std::make_unique() instead.
Amends 2690822428deec4f0c08f4d118d69a7c6036369e.
Pick-to: 6.9 6.8
Change-Id: Icabb9154eb38630855e14094b958af0214516f6b
Reviewed-by: Volker Hilsheimer <[email protected]>
-rw-r--r-- | examples/sql/sqlbrowser/browser.cpp | 6 | ||||
-rw-r--r-- | examples/sql/sqlbrowser/browser.h | 4 | ||||
-rw-r--r-- | examples/sql/sqlbrowser/qsqlconnectiondialog.cpp | 6 | ||||
-rw-r--r-- | examples/sql/sqlbrowser/qsqlconnectiondialog.h | 4 |
4 files changed, 10 insertions, 10 deletions
diff --git a/examples/sql/sqlbrowser/browser.cpp b/examples/sql/sqlbrowser/browser.cpp index 9a99999702b..3aad9fb890b 100644 --- a/examples/sql/sqlbrowser/browser.cpp +++ b/examples/sql/sqlbrowser/browser.cpp @@ -18,7 +18,7 @@ Browser::Browser(QWidget *parent) : QWidget(parent) - , m_ui(new Ui::Browser) + , m_ui{std::make_unique<Ui::Browser>()} { m_ui->setupUi(this); @@ -60,9 +60,7 @@ Browser::Browser(QWidget *parent) } Browser::~Browser() -{ - delete m_ui; -} + = default; void Browser::exec() { diff --git a/examples/sql/sqlbrowser/browser.h b/examples/sql/sqlbrowser/browser.h index c61048c84ae..95c7079539d 100644 --- a/examples/sql/sqlbrowser/browser.h +++ b/examples/sql/sqlbrowser/browser.h @@ -7,6 +7,8 @@ #include <QWidget> #include <QSqlTableModel> +#include <memory> + QT_FORWARD_DECLARE_CLASS(QSqlError) QT_BEGIN_NAMESPACE @@ -50,7 +52,7 @@ signals: void statusMessage(const QString &message); private: - Ui::Browser *m_ui; + const std::unique_ptr<Ui::Browser> m_ui; }; class CustomModel : public QSqlTableModel diff --git a/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp b/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp index 21c22b84d9b..9f6b8c8169a 100644 --- a/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp +++ b/examples/sql/sqlbrowser/qsqlconnectiondialog.cpp @@ -11,7 +11,7 @@ QSqlConnectionDialog::QSqlConnectionDialog(QWidget *parent) : QDialog(parent) - , m_ui(new Ui::QSqlConnectionDialogUi) + , m_ui{std::make_unique<Ui::QSqlConnectionDialogUi>()} { m_ui->setupUi(this); @@ -24,9 +24,7 @@ QSqlConnectionDialog::QSqlConnectionDialog(QWidget *parent) } QSqlConnectionDialog::~QSqlConnectionDialog() -{ - delete m_ui; -} + = default; QString QSqlConnectionDialog::driverName() const { diff --git a/examples/sql/sqlbrowser/qsqlconnectiondialog.h b/examples/sql/sqlbrowser/qsqlconnectiondialog.h index b5654ea9133..70dec9e9a86 100644 --- a/examples/sql/sqlbrowser/qsqlconnectiondialog.h +++ b/examples/sql/sqlbrowser/qsqlconnectiondialog.h @@ -6,6 +6,8 @@ #include <QDialog> +#include <memory> + QT_BEGIN_NAMESPACE namespace Ui { @@ -31,7 +33,7 @@ public: void accept() override; private: - Ui::QSqlConnectionDialogUi *m_ui; + const std::unique_ptr<Ui::QSqlConnectionDialogUi> m_ui; }; #endif |