我将这一行添加到我的 QTestLib 测试类中:
QFETCH(MyType, value);
当试图编译测试类时,我得到这个错误:
error: no member named 'qt_metatype_id' in 'QMetaTypeId<MyType>'
最佳答案
当使用 QTest::addColumn
和 QFETCH
时,类型不是 Qt 内置的,你必须添加这一行:
Q_DECLARE_METATYPE(MyType);
它超出了测试类的开始。例如:
Q_DECLARE_METATYPE(MyType);
class MyTest : public QObject
{
Q_OBJECT
private slots:
void testSomething_data()
{
QTest::addColumn< MyType >("expectedValue");
...
}
void testSomething()
{
QFETCH(MyType, expectedValue);
...
}
};
关于c++ - "no member named ' qt_metatype_id '"用于 QFETCH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14327463/