Q_PROPERTY
別のヘルパー マクロ内にマクロを配置する方法は?
#define SimpleAllinOne(member, _type) \
public: \
void Set##member(_type _arg_##member) \
{ \
m_##member = _arg_##member;\
} \
_type Get##member() const\
{ \
return m_##member;\
} \
private: \
_type m_##member; \
Q_PROPERTY(_type member READ Get##member WRITE Set##member)
.. 動作しません。プリプロセッサの出力 (gcc -E flag
またはnmake/jom /P flag
) には、(動作中の) セッター/ゲッター メソッドと対応するメンバー変数が表示されますが、行の単一の文字は表示されませんQ_PROPERTY
。
更新: ユーザー マクロを適切に展開する Qt5.1 で動作するようです。Qt4.8 は動作しません。Qt5.0 はテストされていません。#QTBUG-35を参照してください(?? のおかげです)。