Мы автоматически генерируем код для значительного числа (1000+) небольших классов.
Поскольку мы будем использовать некоторые из этих классов в QVariants и / или сигналах, которые мы рассматриваем, включать ли Q_DECLARE_METATYPE
макрос в сгенерированном коде для всех этих классов. Возможные альтернативы, которые мы рассмотрели, состояли бы в том, чтобы генерировать макрос только для классов, которые его требуют, или добавлять макрос, как требуется в неавтоматически сгенерированном коде.
//Foo.h
class Foo {
public:
//...
};
Q_DECLARE_METATYPE(Foo)
Одной из проблем было то, что (отрицательный ) влияние добавления тысяч классов через Q_DECLARE_METATYPE
(например, для производительности, использования памяти, времени компиляции и т. д. c.) будет. Я расследовал , но пока не нашел ничего актуального - есть ли у кого-нибудь соответствующий опыт / знания в этом отношении?