"no member named 'qt_metatype_id'" for QFETCH
"no member named 'qt_metatype_id'" for QFETCH
我将这一行添加到我的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);
...
}
};
相关文章:
- "error: no matching function for call to"构造函数错误
- 表示"accepting anything for this template argument" C++概念的通配符
- 如何在C++中从两个单独的for循环中添加两个数组
- 在Linux for Windows上编译C++代码时出错
- 调用专用模板时出错"no matching function for call to [...]"
- 为什么我的for循环不能正确获取argv
- 为什么我不能在 FOR LOOP 中使用 i/10,C++?
- Arduino:for/while/if在void setup()或void loop()之前?——错误:之前需要不合格
- 在基于范围的for循环中使用结构化绑定声明
- 通过for循环使用用户输入填充列表
- 使用for循环检查数组中的重复项
- 在for循环中使用auto vs decltype(vec.size())来处理字符串的向量
- 为什么 const std::p air<K,V>& 在 std::map 上基于范围的 for 循环不起作用?
- 正在使用for循环创建QScatterSerie
- Python中的for循环与C++有何不同
- std::memory_order for std::atomic:<T>:wait
- 为什么我收到错误消息,在'for'之前应收到非限定 id
- c++ for 循环中预期的非限定 id 错误
- 错误:"for"之前应为非限定 id。编译由于 -Wfatal 错误而终止
- 使用映射类型会产生GCC错误:预期的未限定id在' for '之前