- Qt 6.4
- Qt Core
- <QForeach> Proxy Page
- Qt 6.4.2 Reference Documentation

# <QForeach> Proxy Page

## Macros

| Q_FOREACH(variable, container)
| Q_FOREVER
| foreach(variable, container)
| forever

## Macro Documentation

### Q_FOREACH(variable, container)

Same as foreach(variable, container).

This macro is available even when `no_keywords` is specified using the `.pro` file's `CONFIG` variable.

Note: Since Qt 5.7, the use of this macro is discouraged. It will be removed in a future version of Qt. Please use C++11 range-for, possibly with qAsConst(), as needed.

See also qAsConst().

### Q_FOREVER

Same as forever.

This macro is available even when `no_keywords` is specified using the `.pro` file's `CONFIG` variable.

See also foreach().

### foreach(variable, container)

This macro is used to implement Qt's `foreach` loop. The variable parameter is a variable name or variable definition; the container parameter is a Qt container whose value type corresponds to the type of the variable. See The foreach Keyword for details.

If you're worried about namespace pollution, you can disable this macro by adding the following line to your `.pro` file:

     CONFIG += no_keywords

Note: Since Qt 5.7, the use of this macro is discouraged. It will be removed in a future version of Qt. Please use C++11 range-for, possibly with qAsConst(), as needed.

See also qAsConst().

### forever

This macro is provided for convenience for writing infinite loops.

Example:

     forever {
         ...
     }

It is equivalent to `for (;;)`.

If you're worried about namespace pollution, you can disable this macro by adding the following line to your `.pro` file:

     CONFIG += no_keywords

See also Q_FOREVER.