首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HippoMocks:可以模拟非虚方法吗?

HippoMocks:可以模拟非虚方法吗?
EN

Stack Overflow用户
提问于 2015-04-16 21:08:37
回答 1查看 1.1K关注 0票数 1

我已经开始使用HippoMocks编写单元测试了。我想知道是否可以模拟非虚拟类方法?

乍一看代码,似乎表明框架只支持虚拟方法。但由于它支持简单C函数的模拟,因此应该可以对非虚类方法执行相同的操作。

有没有办法做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2015-09-05 02:01:14

这并不是不可能的,但它会导致非常奇怪的使用机制-或者没有线程安全的可能性。

C函数总是被人嘲笑。在这种情况下,它总是重定向到mock,你不能再调用原始的了。

C++虚函数只为所请求的对象模拟,而任何其他对象仍将在那里具有常规函数。

C++非虚函数看起来像一个虚函数,但仅在每个类级别上是可模拟的。你的编译器也很可能会内联这些函数,使得它不太可靠。

我从一个盲目应用它的人那里得到了一个补丁,它受到了所描述的问题的影响。您需要100%确定对该成员函数的任何访问都不是内联的,这几乎是不可能的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29675688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档