gtest/gmock 是否有办法对 class 的每个实例进行存根?

Does gtest/gmock have a way to stub every instance of a class?

是否可以像 RSpec 与 any_instance 一样使用 GTest/GMock 在 C++ 中对每个 class 实例进行存根?阅读文档但找不到任何内容。

谢谢。

简短回答:否。gtest/gmock 中没有这样的 built-in 功能。

长答案:无法将某些行为强加于任意 C++ class,尤其是 C++ 标准库(相当于 Ruby 核心库的 C++)。这是两种根本不同的语言。 Ruby 是一种"message oriented" 语言,所有对象都响应消息。 C++ 中不存在这样的概念,因此无法实现您想要的行为。