gpt4 book ai didi

c++ - 如何使用 const/non 模拟重载函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:51:57 25 4
gpt4 key购买 nike

如何模拟以下代码?

class ISomeClass
{
public:
virtual ~ISomeClass() {} = 0;
virtual const MyType & getType() const = 0;
virtual MyType & getType() = 0;
};

我已经尝试了以下方法,但它不起作用。你能帮帮我吗?

class MockSomeClass : public ISomeClass
{
public:
using MyTypeConstRefType = const MyType&;
using MyTypeRefType = MyType&;

public:
MOCK_METHOD0(getType, MyTypeConstRefType(void) const);

MOCK_METHOD0(getType, MyTypeRefType(void));
};

最佳答案

它们为 const 成员函数(“方法”)提供了一组单独的宏:MOCK_CONST_METHOD# .所以在你的情况下,它将是:

MOCK_CONST_METHOD0(getType, MyTypeConstRefType());

用法与 MOCK_METHOD# 相同,第一个参数是函数名,第二个是函数类型。

关于c++ - 如何使用 const/non 模拟重载函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34196805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com