QScopedArrayPointer Class

The QScopedArrayPointer class stores a pointer to a dynamically allocated array of objects, and deletes it upon destruction. More...

Header: #include <QScopedArrayPointer>
qmake: QT += core
Since: Qt 4.6
Inherits: QScopedPointer

This class was introduced in Qt 4.6.

Note: All functions in this class are reentrant.

Public Functions

QScopedArrayPointer(D *p)
QScopedArrayPointer()
void swap(QScopedArrayPointer<T, Cleanup> &other)
T & operator[](int i)
const T & operator[](int i) const

Detailed Description

A QScopedArrayPointer is a QScopedPointer that defaults to deleting the object it is pointing to with the delete[] operator. It also features operator[] for convenience, so we can write:

void foo()
{
    QScopedArrayPointer<int> i(new int[10]);
    i[2] = 42;
    ...
    return; // our integer array is now deleted using delete[]
}

Member Function Documentation

QScopedArrayPointer::QScopedArrayPointer(D *p)

Constructs a QScopedArrayPointer and stores the array of objects pointed to by p.

QScopedArrayPointer::QScopedArrayPointer()

Constructs a QScopedArrayPointer instance.

void QScopedArrayPointer::swap(QScopedArrayPointer<T, Cleanup> &other)

Swap this pointer with other.

T &QScopedArrayPointer::operator[](int i)

Provides access to entry i of the scoped pointer's array of objects.

If the contained pointer is nullptr, behavior is undefined.

See also isNull().

const T &QScopedArrayPointer::operator[](int i) const

Provides access to entry i of the scoped pointer's array of objects.

If the contained pointer is nullptr behavior is undefined.

See also isNull().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qscopedarraypointer.html