QScopedArrayPointer Class
template <typename T, typename Cleanup> class QScopedArrayPointerQScopedArrayPointer 클래스는 동적으로 할당된 객체 배열에 대한 포인터를 저장하며, 소멸 시 해당 배열을 삭제합니다. 더 보기...
| 헤더: | #include <QScopedArrayPointer> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| 상속: | QScopedPointer |
참고: 이 클래스의 모든 함수는 재진입 가능합니다.
공개 함수
| QScopedArrayPointer() | |
| QScopedArrayPointer(D *p) | |
| ~QScopedArrayPointer() | |
| T & | operator[](qsizetype i) |
| const T & | operator[](qsizetype i) const |
상세 설명
QScopedArrayPointer는 기본적으로 delete[] 연산자를 사용하여 가리키는 객체를 삭제하는 Q QScopedPointer 입니다. 템플릿 매개변수 ` T `는 배열 요소의 유형을 지정하고, 선택적 매개변수 ` Cleanup `는 정리 핸들러를 지정합니다. 또한 편의성을 위해 `operator[]`를 제공하므로 다음과 같이 작성할 수 있습니다.
void foo()
{
QScopedArrayPointer<int> i(new int[10]);
i[2] = 42;
...
return; // our integer array is now deleted using delete[]
}멤버 함수 설명서
QScopedArrayPointer::QScopedArrayPointer()
QScopedArrayPointer 인스턴스를 생성합니다.
[explicit] template <typename D, QScopedArrayPointer<T, Cleanup>::if_same_type<D> = true> QScopedArrayPointer::QScopedArrayPointer(D *p)
QScopedArrayPointer를 생성하고, p 가 가리키는 객체 배열을 저장합니다.
[default] QScopedArrayPointer::~QScopedArrayPointer()
QScopedArrayPointer 의 인스턴스를 삭제합니다.
T &QScopedArrayPointer::operator[](qsizetype i)
범위가 지정된 포인터가 가리키는 객체 배열의 항목 i 에 대한 액세스를 제공합니다.
포함된 포인터가 ` nullptr`인 경우, 동작은 정의되지 않습니다.
참고: Qt 6.5 이전버전에서는 i 의 유형이 qsizetype 가 아닌 int 였기 때문에, 64비트 플랫폼에서 값이 잘릴 수 있습니다.
isNull()도 참조하십시오 .
const T &QScopedArrayPointer::operator[](qsizetype i) const
범위가 지정된 포인터가 가리키는 객체 배열의 i 항목에 대한 액세스를 제공합니다.
포함된 포인터가 ` nullptr `인 경우 동작은 정의되지 않습니다.
참고: Qt 6.5 이전버전에서는 i 의 유형이 qsizetype 가 아닌 int 였기 때문에, 64비트 플랫폼에서 잘림 현상이 발생할 수 있습니다.
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.