Я хотел бы сохранить некоторую информацию о классе с помощью макроса Q_CLASSINFO. Тем не менее, я хотел бы, чтобы обернуть его в моей собственной макрокоманды, например:Расширение макроса в moc
#define DB_TABLE(TABLE) \
Q_CLASSINFO("db_table", #TABLE)
#define DB_FIELD(PROPERTY, COLUMN) \
Q_CLASSINFO("dbcol_" #PROPERTY, #COLUMN)
class Foo : public QObject
{
Q_OBJECT
DB_TABLE(some_table)
DB_FIELD(clientName, client_name)
}
К сожалению, MOC не расширяет макросы так Q_CLASSINFO не добавляется.
Я пытался подавать moc с уже предварительно обработанным источником, но он не подходит для некоторых включенных классов Qt.
Знаете ли вы, что обходной путь для этого?
Для записи: Mt Qt 5 расширяет макросы. – peppe