Auf dieser Seite

QtTaskTree::ForeverIterator Class

class QtTaskTree::ForeverIterator

Unendlicher Iterator, der innerhalb des Elements For verwendet wird. Mehr...

Kopfzeile: #include <qtasktree.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS TaskTree)
target_link_libraries(mytarget PRIVATE Qt6::TaskTree)
qmake: QT += tasktree
Seit: Qt 6.11
Vererbt: QtTaskTree::Iterator

Hinweis: Alle Funktionen in dieser Klasse sind reentrant.

Öffentliche Funktionen

Detaillierte Beschreibung

Siehe auch Iterator, RepeatIterator, UntilIterator, und ListIterator.

Dokumentation der Mitgliedsfunktionen

ForeverIterator::ForeverIterator()

Konstruiert einen nie endenden Iterator für das For (ForeverIterator()) >> Do {} Konstrukt.

Hinweis: Seien Sie sehr vorsichtig, wenn Ihr Do-Körper den parallelen Modus angibt - in diesem Fall kann QTaskTree eine unendliche Anzahl von Aufgaben instanziieren.

Beispiel für die Verwendung:

static const int maxZahl = 10;const int luckyZahl = QRandomGenerator().global()->bounded(maxZahl);
qDebug() << "Today's lucky number is:" << luckyNumber;
qDebug() << "Let's start the drawing...";

const auto onNumberCheck = [luckyNumber] { const int drawnNumber = QRandomGenerator().global()->bounded(maxZahl);    qDebug() << "You have drawn:" << drawnNumber;
   bool gewonnen = gezogeneZahl == Glückszahl; if (gewonnen)        qDebug() << "You have won! Congratulations!";
   return won; };const Group recipe = For (ForeverIterator())>> Do { stopOnSuccess,timeoutTask(1s),    QSyncTask(onNumberCheck) };

Die mögliche Ausgabe, wenn die recipe von der QTaskTree gestartet wird:

Today's lucky number is: 8
Let's start the drawing...
You have drawn: 2
You have drawn: 2
You have drawn: 6
You have drawn: 7
You have drawn: 9
You have drawn: 8
You have won! Congratulations!

© 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.