In my opinion,the using of a function-like macro in C++ is similar to the using of a common function. It seems to be like this:
macroFunctionName(arg1, arg2, arg3);
However, the using of Q_PROPERTY usually looks like this:
Q_PROPERTY(Qt::WindowModality windowModality READ windowModality WRITE setWindowModality)
As we can see, they are different.There is no comma in the using of Q_PROPERTY.I have never seen a function-like macro which was used like Q_PROPERTY.I am even not sure whether Q_PROPERTY is a function-like macro in C++.So is it ill-formed in C++? Or it's just a special syntax for MOC in Qt?
I tried to find it in the C++ standard document but nothing about it was found.