QtTaskTree::ListIterator Class
template <typename T> class QtTaskTree::ListIteratorFor element 내에서 사용할 리스트 반복자. 더 보기...
| 헤더: | #include <qtasktree.h> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS TaskTree) target_link_libraries(mytarget PRIVATE Qt6::TaskTree) |
| qmake: | QT += tasktree |
| 다음 버전부터: | Qt 6.11 |
| 상속: | QtTaskTree::Iterator |
| 상태: | 기술 미리보기 |
이 클래스는 기술 미리보기 단계에 있으며 변경될 수 있습니다.
참고: 이 클래스의 모든 함수는 재진입 가능합니다.
공개 함수
| ListIterator(RangeGetter &&rangeGetter) | |
| ListIterator(const QList<T> &list) | |
| const T & | operator*() const |
| const T * | operator->() const |
Iterator, ForeverIterator, RepeatIterator 및 UntilIterator도 참조하십시오 .
멤버 함수 설명서
[explicit] template <typename RangeGetter, typename RangeType = std::invoke_result_t<std::decay_t<RangeGetter>>> requires if_compatible_range<RangeGetter> ListIterator::ListIterator(RangeGetter &&rangeGetter)
For (ListIterator(rangeGetter)) >> Do {} 구문을 위한 리스트 이터레이터를 생성합니다. rangeGetter 는 인수가 없으며, value_type 이 T 인 연속된 범위를 반환하는 호출 가능 객체입니다. 반환된 범위는 반드시 QList<T>일 필요는 없습니다. std::data() 를 지원하는 모든 연속된 범위 유형이 허용됩니다. 예를 들어, QString 를 반환하는 게터는 ListIterator<QChar> 에 대해 유효합니다. 이 이터레이터를 포함하는 Group 에 진입할 때, 모든 관련 스토리지 및 상위 반복이 활성화된 상태에서 이 게터가 한 번 호출됩니다. 해당 Group의 onSetupHandler()가 SetupResult::Continue 이외의 값을 반환한 경우, 이 호출은 건너뛸 수 있습니다. 이터레이터는 반환된 범위의 각 요소를 순회합니다.
이는 중첩된 루프를 반복하는 데 유용한 패턴입니다:
const ListIterator outer(QStringList{"12", "34"});
const ListIterator inner([outer] { return *outer; });
const Group recipe {
For (outer) >> Do {
For (inner) >> Do {
QSyncTask([inner] { qDebug() << *inner; })
}
}
};Iterator::iteration(), operator*(), operator->()도 참조하십시오 .
[explicit] ListIterator::ListIterator(const QList<T> &list)
For (ListIterator(list)) >> Do {} 구문을 위한 리스트 이터레이터를 생성합니다. 이 이터레이터는 전달된 list 의 각 요소를 순회합니다.
Iterator::iteration(), operator*() 및 operator->()도 참조하십시오 .
const T &ListIterator::operator*() const
Do 본문 내의 현재 요소에 대한 참조를 반환합니다. 이 함수는 레시피의 ` QtTaskTree::Do ` 본문에 배치된 ` GroupItem ` 요소의 핸들러 본문 내에서만 사용해야 하며, 그렇지 않으면 프로그램이 중단될 수 있습니다. ` ListIterator `가 `For` 요소에 전달되었는지 반드시 확인하십시오.
const T *ListIterator::operator->() const
Do 본문 내의 현재 요소에 대한 포인터를 반환합니다. 이 함수는 레시피의 ` QtTaskTree::Do ` 본문에 배치된 ` GroupItem ` 요소의 핸들러 본문 내에서만 사용해야 하며, 그렇지 않을 경우 프로그램이 중단될 수 있습니다. ` ListIterator `가 `For` 요소에 전달되었는지 반드시 확인하십시오.
© 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.