diff --git a/src/corelib/tools/qscopedpointer.cpp b/src/corelib/tools/qscopedpointer.cpp index 8d84b3beca..f3a4f0ca1f 100644 --- a/src/corelib/tools/qscopedpointer.cpp +++ b/src/corelib/tools/qscopedpointer.cpp @@ -145,6 +145,13 @@ QT_BEGIN_NAMESPACE still owns the object pointed to. */ +/*! + \fn T *QScopedPointer::get() const + \since 5.11 + + Same as data(). +*/ + /*! \fn T &QScopedPointer::operator*() const diff --git a/src/corelib/tools/qscopedpointer.h b/src/corelib/tools/qscopedpointer.h index 141a3f8c70..eeed3afd83 100644 --- a/src/corelib/tools/qscopedpointer.h +++ b/src/corelib/tools/qscopedpointer.h @@ -140,6 +140,11 @@ public: return d; } + T *get() const Q_DECL_NOTHROW + { + return d; + } + bool isNull() const Q_DECL_NOTHROW { return !d; diff --git a/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp b/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp index a4b06d1b3b..b943b04e23 100644 --- a/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp +++ b/tests/auto/corelib/tools/qscopedpointer/tst_qscopedpointer.cpp @@ -68,6 +68,7 @@ void tst_QScopedPointer::defaultConstructor() /* Check that the members, one, is correctly initialized. */ QScopedPointer p; QCOMPARE(p.data(), static_cast(0)); + QCOMPARE(p.get(), static_cast(0)); } void tst_QScopedPointer::dataOnDefaultConstructed() @@ -75,6 +76,7 @@ void tst_QScopedPointer::dataOnDefaultConstructed() QScopedPointer p; QCOMPARE(p.data(), static_cast(0)); + QCOMPARE(p.get(), static_cast(0)); } class MyClass @@ -113,6 +115,7 @@ void tst_QScopedPointer::reset() QScopedPointer p; p.reset(); QCOMPARE(p.data(), static_cast(0)); + QCOMPARE(p.get(), static_cast(0)); } /* Call reset() on an active value. */ @@ -120,6 +123,7 @@ void tst_QScopedPointer::reset() QScopedPointer p(new int(3)); p.reset(); QCOMPARE(p.data(), static_cast(0)); + QCOMPARE(p.get(), static_cast(0)); } /* Call reset() with a value, on an active value. */ @@ -129,6 +133,7 @@ void tst_QScopedPointer::reset() int *const value = new int(9); p.reset(value); QCOMPARE(*p.data(), 9); + QCOMPARE(*p.get(), 9); } /* Call reset() with a value, on default constructed value. */ @@ -138,6 +143,7 @@ void tst_QScopedPointer::reset() int *const value = new int(9); p.reset(value); QCOMPARE(*p.data(), 9); + QCOMPARE(*p.get(), 9); } }