QObject: clarify docs wrt. member access following Q_OBJECT and co
The macros expand to declarations that end in a private: section, which means everything following them is private. As Fabian said in the bug report, this is obvious when Q_OBJECT/GADGET ...etc are used in a class, but might be a bit surprising when used in a `struct`. Fixes: QTBUG-120297 Pick-to: 6.7 6.6 6.5 6.2 5.15 Change-Id: Iacdfc4eb3bab3554cc1142f682b11b32c3868b8f Reviewed-by: Marc Mutz <marc.mutz@qt.io>
This commit is contained in:
parent
8bfebaa22f
commit
eb2db79064
@ -4710,6 +4710,13 @@ QDebug operator<<(QDebug dbg, const QObject *o)
|
||||
Q_GADGET or Q_GADGET_EXPORT instead of Q_OBJECT to enable the meta object system's support
|
||||
for enums in a class that is not a QObject subclass.
|
||||
|
||||
//! [qobject-macros-private-access-specifier]
|
||||
\note This macro expansion ends with a \c private: access specifier, which makes member
|
||||
declarations immediately after the macro private, too. If you want add public (or protected)
|
||||
members immediately after the macro, you need to use a \c public: (or \c protected:)
|
||||
access specifier.
|
||||
//! [qobject-macros-private-access-specifier]
|
||||
|
||||
\sa {Meta-Object System}, {Signals and Slots}, {Qt's Property System}
|
||||
*/
|
||||
|
||||
@ -4729,6 +4736,8 @@ QDebug operator<<(QDebug dbg, const QObject *o)
|
||||
\c{staticMetaObject} is of type QMetaObject and provides access to the
|
||||
enums declared with Q_ENUM.
|
||||
|
||||
\include qobject.cpp qobject-macros-private-access-specifier
|
||||
|
||||
\sa Q_GADGET_EXPORT
|
||||
*/
|
||||
|
||||
@ -4754,6 +4763,8 @@ QDebug operator<<(QDebug dbg, const QObject *o)
|
||||
~~~
|
||||
\endcode
|
||||
|
||||
\include qobject.cpp qobject-macros-private-access-specifier
|
||||
|
||||
\sa Q_GADGET, {Creating Shared Libraries}
|
||||
*/
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user