After carefully reading the documentation , it seems to me that there are minor, important differences.
Primarily:
MEMBER variable binding is required if the READ access function is not specified. This makes this variable variable readable and writable without the need to create READ and WRITE access functions.
This means that you can use MEMBER and rely on automatically generated trivial access functions or define these functions for yourself if they turn out to be more complicated than default.
In other words, if your access functions are all the same, for example:
int propName() const { return prop; }
So MEMBER excellent. This is not the case if you have something like:
int propName() const { return superComplexMathUsedToComputeProp(); }
Also note that:
The READ, WRITE, and RESET functions can be inherited. They can also be virtual.
If you are dealing with a hierarchy, perhaps you want them to be inherited, so perhaps it would be better with READ and WRITE .
What is better and what to use depends on the specific problem.
source share