我想模拟一个返回复杂数据类型的方法
class aClass
{
public:
virtual const QMap<QString, QString> aMethod() const;
}
class MockaClass : public aClass
{
public:
MOCK_CONST_METHOD0(aMethod, const QMap<QString, QString>());
}
此代码无法编译:“宏“MOCK_CONST_METHOD0”传递了 3 个参数,但只需要 2 个”
我认为 googlemock 宏不理解 QMap 并将逗号解释为参数分隔符。
有没有办法告诉googlemock QMap是返回值?
只需使用一个typedef
像这样:
class aClass
{
public:
typedef const QMap<QString, QString> MyType;
virtual MyType aMethod() const;
}
class MockaClass : public aClass
{
public:
MOCK_CONST_METHOD0(aMethod, MyType());
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)