const_iterator Class
class QDirListing::const_iteratorThis class was introduced in Qt 6.8.
- List of all members, including inherited members
- const_iterator is part of Input/Output and Networking.
Public Types
Public Functions
QDirListing::const_iterator::reference | operator*() const |
QDirListing::const_iterator & | operator++() |
void | operator++(int) |
QDirListing::const_iterator::pointer | operator->() const |
Detailed Description
The iterator type returned by QDirListing::cbegin().
- This is a forward-only, single-pass iterator (you cannot iterate directory entries in reverse order)
- Can't be copied, only
std::move()
d. - The return value of post-increment on objects that model
std::input_iterator
is partially-formed (a copy of an iterator that has since been advanced), the only valid operations on such an object are destruction and assignment of a new iterator. Therefore the post-increment operator advances the iterator and returnsvoid
. - Doesn't allow random access
- Can be used in ranged-for loops; or with C++20 std::ranges algorithms that don't require random access iterators
- Dereferencing a valid iterator returns a
const DirEntry &
- (c)end() returns a QDirListing::sentinel that signals the end of the iteration. Dereferencing an iterator that compares equal to end() is undefined behavior
Note: The "classical" STL algorithms don't support iterator/sentinel, so you need to use C++20 std::ranges algorithms for QDirListing, or else a 3rd-party library that provides range-based algorithms in C++17.
See also QDirListing, QDirListing::sentinel, and QDirListing::DirEntry.
Member Type Documentation
[alias]
const_iterator::pointer
A typedef for const QDirListing::DirEntry *
.
[alias]
const_iterator::reference
A typedef for const QDirListing::DirEntry &
.
Member Function Documentation
QDirListing::const_iterator::reference const_iterator::operator*() const
Returns a const QDirListing::DirEntry &
of the directory entry this iterator points to.
QDirListing::const_iterator &const_iterator::operator++()
Pre-increment operator. Advances the iterator and returns a reference to it.
void const_iterator::operator++(int)
Post-increment operator.
QDirListing::const_iterator models C++20 std::input_iterator, that is, it is a move-only, forward-only, single-pass iterator, that doesn't allow random access.
The return value of post-increment on objects that model std::input_iterator
is partially-formed (a copy of an iterator that has since been advanced), the only valid operations on such an object are destruction and assignment of a new iterator. Therefore the post-increment operator advances the iterator and returns void
.
QDirListing::const_iterator::pointer const_iterator::operator->() const
Returns a const QDirListing::DirEntry *
to the directory entry this iterator points to.