QMetaContainer Class
QMetaContainer 클래스는 순차 및 연관 컨테이너에 대한 공통 기능을 제공합니다. 더 보기...
Header: | #include <QMetaContainer> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
이후: | Qt 6.0 |
상속된 사람: |
이 클래스는 동등 비교 가능합니다.
공용 함수
void | advanceConstIterator(void *iterator, qsizetype step) const |
void | advanceIterator(void *iterator, qsizetype step) const |
void * | begin(void *container) const |
bool | canClear() const |
void | clear(void *container) const |
bool | compareConstIterator(const void *i, const void *j) const |
bool | compareIterator(const void *i, const void *j) const |
void * | constBegin(const void *container) const |
void * | constEnd(const void *container) const |
void | copyConstIterator(void *target, const void *source) const |
void | copyIterator(void *target, const void *source) const |
void | destroyConstIterator(const void *iterator) const |
void | destroyIterator(const void *iterator) const |
qsizetype | diffConstIterator(const void *i, const void *j) const |
qsizetype | diffIterator(const void *i, const void *j) const |
void * | end(void *container) const |
bool | hasBidirectionalIterator() const |
bool | hasConstIterator() const |
bool | hasForwardIterator() const |
bool | hasInputIterator() const |
bool | hasIterator() const |
bool | hasRandomAccessIterator() const |
bool | hasSize() const |
qsizetype | size(const void *container) const |
멤버 함수 문서
void QMetaContainer::advanceConstIterator(void *iterator, qsizetype step) const
iterator 구문을 step 단계만큼 전진시킵니다. step 가 음수이면 iterator 은 컨테이너의 시작 부분으로 뒤로 이동합니다. hasBidirectionalIterator ()가 거짓을 반환하는 경우 step 음수 값에 대해서는 동작이 지정되지 않습니다.
constBegin() 및 constEnd()도 참조하세요 .
void QMetaContainer::advanceIterator(void *iterator, qsizetype step) const
불변이 아닌 iterator 을 step 단계만큼 전진시킵니다. step 가 음수인 경우 iterator 은 컨테이너의 시작 부분으로 뒤로 이동합니다. hasBidirectionalIterator ()가 거짓을 반환하면 step 음수 값에 대해서는 동작이 지정되지 않습니다.
void *QMetaContainer::begin(void *container) const
container 의 시작을 가리키는 컨스트가 아닌 이터레이터를 생성하고 반환합니다. 이터레이터는 new를 사용하여 힙에 할당됩니다. 메모리를 회수하려면 결국 destroyIterator 을 사용하여 소멸해야 합니다.
컨테이너가 컨스트가 아닌 이터레이터를 제공하지 않으면 nullptr
을 반환합니다.
end(), constBegin(), constEnd() 및 destroyIterator()도 참조하세요 .
bool QMetaContainer::canClear() const
컨테이너를 지울 수 있으면 true
, 그렇지 않으면 false
을 반환합니다.
clear()도 참조하세요 .
void QMetaContainer::clear(void *container) const
주어진 container 을 지울 수 있는 경우 지웁니다.
canClear()도 참조하세요 .
bool QMetaContainer::compareConstIterator(const void *i, const void *j) const
생성자 이터레이터 i 와 j 가 반복하는 컨테이너의 동일한 값을 가리키면 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
constBegin() 및 constEnd()도 참조하세요 .
bool QMetaContainer::compareIterator(const void *i, const void *j) const
컨스트가 아닌 이터레이터 i 및 j 가 반복하는 컨테이너에서 동일한 값을 가리키면 true
을 반환하고, 그렇지 않으면 false
을 반환합니다.
void *QMetaContainer::constBegin(const void *container) const
container 의 시작을 가리키는 const 이터레이터를 생성하고 반환합니다. 이터레이터는 new를 사용하여 힙에 할당됩니다. 메모리를 회수하려면 결국 destroyConstIterator 을 사용하여 소멸해야 합니다.
컨테이너가 생성자 이터레이터를 제공하지 않으면 nullptr
를 반환합니다.
constEnd(), begin(), end() 및 destroyConstIterator()도 참조하세요 .
void *QMetaContainer::constEnd(const void *container) const
container 의 끝을 가리키는 const 이터레이터를 생성하고 반환합니다. 이터레이터는 new를 사용하여 힙에 할당됩니다. 메모리를 회수하려면 결국 destroyConstIterator 을 사용하여 소멸해야 합니다.
컨테이너가 생성자 이터레이터를 제공하지 않는 경우 nullptr
를 반환합니다.
constBegin(), begin(), end() 및 destroyConstIterator()도 참조하세요 .
void QMetaContainer::copyConstIterator(void *target, const void *source) const
const 이터레이터 source 를 const 이터레이터 target 로 복사합니다. 이후 compareConstIterator(대상, 소스)는 true
을 반환합니다.
constBegin() 및 constEnd()도 참조하세요 .
void QMetaContainer::copyIterator(void *target, const void *source) const
논컨스트 이터레이터 source 를 논컨스트 이터레이터 target 로 복사합니다. 이후 compareIterator(대상, 소스)는 true
을 반환합니다.
void QMetaContainer::destroyConstIterator(const void *iterator) const
constBegin() 또는 constEnd()를 사용하여 이전에 생성한 iterator const를 삭제합니다.
constBegin(), constEnd() 및 destroyIterator()도 참조하세요 .
void QMetaContainer::destroyIterator(const void *iterator) const
begin() 또는 end()를 사용하여 이전에 생성된 참조가 아닌 iterator 을 삭제합니다.
begin(), end() 및 destroyConstIterator()도 참조하세요 .
qsizetype QMetaContainer::diffConstIterator(const void *i, const void *j) const
i 와 j 사이의 거리, 즉 i -
j 에 해당하는 거리를 반환합니다. j 이 i 보다 컨테이너 끝에 가까우면 반환되는 값은 음수입니다. hasBidirectionalIterator ()가 거짓을 반환하는 경우 이 경우 동작은 지정되지 않습니다.
constBegin() 및 constEnd()도 참조하세요 .
qsizetype QMetaContainer::diffIterator(const void *i, const void *j) const
컨스트가 아닌 이터레이터 i 와 j 사이의 거리( i -
j 에 해당하는 값)를 반환합니다. j 이 i 보다 컨테이너 끝에 가까우면 반환되는 값은 음수입니다. hasBidirectionalIterator ()가 거짓을 반환하는 경우 이 경우 동작은 지정되지 않습니다.
void *QMetaContainer::end(void *container) const
container 의 끝을 가리키는 컨스트가 아닌 이터레이터를 생성하고 반환합니다. 이터레이터는 new를 사용하여 힙에 할당됩니다. 메모리를 회수하려면 결국 destroyIterator 을 사용하여 소멸해야 합니다.
컨테이너가 컨스트가 아닌 이터레이터를 제공하지 않으면 nullptr
을 반환합니다.
hasIterator(), end(), constBegin(), constEnd() 및 destroyIterator()도 참조하세요 .
bool QMetaContainer::hasBidirectionalIterator() const
기본 컨테이너가 각각 std::bidirectional_iterator_tag 및 std::random_access_iterator_tag에 정의된 대로 양방향 이터레이터 또는 랜덤 액세스 이터레이터를 제공하는 경우 true
를 반환합니다. 그렇지 않으면 false
를 반환합니다.
QMetaSequence 는 동일한 컨테이너에 대한 const 이터레이터와 non-const 이터레이터가 동일한 이터레이터 특성을 갖는다고 가정합니다.
bool QMetaContainer::hasConstIterator() const
기본 컨테이너가 const 이터레이터를 제공하면 true
, 그렇지 않으면 false
을 반환합니다.
constBegin(), constEnd(), destroyConstIterator(), compareConstIterator(), diffConstIterator(), advanceConstIterator(), copyConstIterator()도 참조하세요 .
bool QMetaContainer::hasForwardIterator() const
기본 컨테이너가 std::forward_iterator_tag에 정의된 정방향 이터레이터를 제공하면 true
을 반환하고, 그렇지 않으면 false
을 반환합니다. 양방향 이터레이터와 랜덤 액세스 이터레이터는 정방향 이터레이터의 특수화입니다. 컨테이너가 이 중 하나를 제공하는 경우 이 메서드는 true
를 반환합니다.
QMetaSequence 는 동일한 컨테이너에 대한 const 이터레이터와 non-const 이터레이터가 동일한 이터레이터 특성을 갖는다고 가정합니다.
bool QMetaContainer::hasInputIterator() const
기본 컨테이너가 std::input_iterator_tag에 정의된 입력 이터레이터를 제공하는 경우 true
를 반환하고, 그렇지 않으면 false
을 반환합니다. 정방향, 양방향 및 랜덤 액세스 이터레이터는 입력 이터레이터의 특수화입니다. 컨테이너가 이 중 하나를 제공하는 경우 이 메서드는 true
를 반환합니다.
QMetaSequence 는 동일한 컨테이너에 대한 const 이터레이터와 non-const 이터레이터가 동일한 이터레이터 특성을 갖는다고 가정합니다.
bool QMetaContainer::hasIterator() const
기본 컨테이너가 컨스트가 아닌 이터레이터를 제공하는 경우 true
, 그렇지 않으면 false
을 반환합니다.
begin(), end(), destroyIterator(), compareIterator(), diffIterator(), advanceIterator(), copyIterator()도 참조하세요 .
bool QMetaContainer::hasRandomAccessIterator() const
기본 컨테이너가 std::random_access_iterator_tag에 정의된 대로 랜덤 액세스 이터레이터를 제공하면 true
를 반환하고, 그렇지 않으면 false
을 반환합니다.
QMetaSequence 는 동일한 컨테이너에 대한 const 이터레이터와 non-const 이터레이터가 동일한 이터레이터 특성을 갖는다고 가정합니다.
bool QMetaContainer::hasSize() const
컨테이너의 크기를 쿼리할 수 있으면 true
, 그렇지 않으면 false
을 반환합니다.
size()도 참조하세요 .
qsizetype QMetaContainer::size(const void *container) const
크기를 쿼리할 수 있는 경우 주어진 container 값의 개수를 반환합니다. 그렇지 않으면 -1
을 반환합니다.
hasSize()도 참조하세요 .
© 2025 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.