QScopedArrayPointer Class
template <typename T, typename Cleanup> class QScopedArrayPointerDie Klasse „QScopedArrayPointer“ speichert einen Zeiger auf ein dynamisch zugewiesenes Array von Objekten und löscht dieses bei ihrer Zerstörung. Mehr...
| Header: | #include <QScopedArrayPointer> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| Erbt von: | QScopedPointer |
Hinweis: Alle Funktionen dieser Klasse sind reentrant.
Öffentliche Funktionen
| QScopedArrayPointer() | |
| QScopedArrayPointer(D *p) | |
| ~QScopedArrayPointer() | |
| T & | operator[](qsizetype i) |
| const T & | operator[](qsizetype i) const |
Ausführliche Beschreibung
Ein `QScopedArrayPointer` ist ein ` QScopedPointer `, der standardmäßig das Objekt, auf das er zeigt, mit dem Operator `delete[]` löscht. Der Template-Parameter ` T ` gibt den Typ der Array-Elemente an, und der optionale Parameter ` Cleanup ` legt den Cleanup-Handler fest. Zur Vereinfachung verfügt er außerdem über den Operator `[]`, sodass wir schreiben können:
void foo()
{
QScopedArrayPointer<int> i(new int[10]);
i[2] = 42;
...
return; // our integer array is now deleted using delete[]
}Dokumentation zu Mitgliedsfunktionen
QScopedArrayPointer::QScopedArrayPointer()
Erstellt eine Instanz von `QScopedArrayPointer`.
[explicit] template <typename D, QScopedArrayPointer<T, Cleanup>::if_same_type<D> = true> QScopedArrayPointer::QScopedArrayPointer(D *p)
Erstellt einen `QScopedArrayPointer` und speichert das Array von Objekten, auf die ` p` verweist.
[default] QScopedArrayPointer::~QScopedArrayPointer()
Löscht die Instanz von „ QScopedArrayPointer “.
T &QScopedArrayPointer::operator[](qsizetype i)
Bietet Zugriff auf den Eintrag i im Objekt-Array des Bereichszeigers.
Ist der enthaltene Zeiger vom Typ „ nullptr “, ist das Verhalten undefiniert.
Hinweis: In Qt-Versionen vor 6.5 war ` i ` vom Typ ` int` und nicht vom Typ ` qsizetype`, was auf 64-Bit-Plattformen möglicherweise zu einer Abschneidung führen konnte.
Siehe auch ` isNull()`.
const T &QScopedArrayPointer::operator[](qsizetype i) const
Bietet Zugriff auf das Eintrags i des Objektarrays des Bereichszeigers.
Ist der enthaltene Zeiger vom Typ „ nullptr “, ist das Verhalten undefiniert.
Hinweis: In Qt-Versionen vor 6.5 war ` i ` vom Typ ` int` und nicht vom Typ ` qsizetype`, was auf 64-Bit-Plattformen möglicherweise zu einer Abschneidung führte.
Siehe auch ` isNull()`.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.