- Qt 6.8
- Qt Core
- C++ Classes
- QObject
- Qt 6.8.1 Reference Documentation

# Obsolete Members for QObject

The following members of class QObject are deprecated. They are provided to keep old source code working. We strongly advise against using them in new code.

## Macros

`(deprecated)` | Q_ENUMS(...)
`(deprecated)` | Q_FLAGS(...)

## Macro Documentation

### `[deprecated]` Q_ENUMS(...)

This macro is deprecated. We strongly advise against using it in new code.

In new code, you should prefer the use of the Q_ENUM() macro, which makes the type available also to the meta type system. For instance, QMetaEnum::fromType() will not work with types declared with Q_ENUMS().

This macro registers one or several enum types to the meta-object system.

If you want to register an enum that is declared in another class, the enum must be fully qualified with the name of the class defining it. In addition, the class defining the enum has to inherit QObject as well as declare the enum using Q_ENUMS().

See also Qt's Property System.

### `[deprecated]` Q_FLAGS(...)

This macro is deprecated. We strongly advise against using it in new code.

This macro registers one or several flags types with the meta-object system. It is typically used in a class definition to declare that values of a given enum can be used as flags and combined using the bitwise OR operator.

Note: This macro takes care of registering individual flag values with the meta-object system, so it is unnecessary to use Q_ENUMS() in addition to this macro.

In new code, you should prefer the use of the Q_FLAG() macro, which makes the type available also to the meta type system.

See also Qt's Property System.