-2

我试图在我的 cpp 单元测试用例中模拟第 3 方 API 调用。为此,我在 VS2013 中使用 Nuget 包管理器在我的项目中安装了 gmock 1.7.0。它在我的测试项目中添加了 gmock-all.cc 和 gtest-all.cc。一旦我遵守它就可以了。一旦我在我的 cppunit 测试用例中添加 #include "gmock\gmock.h" ,它就会给我以下错误 -

2>c:\tfs2013\main\source\packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(893):错误 C2065:'lhs':未声明的标识符 2>c :\tfs2013\main\source\packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(893): 错误 C2988: 无法识别的模板声明/定义 2>c:\tfs2013\ main\source\packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(893):错误 C2059:语法错误:'const' 2>c:\tfs2013\main\source \packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(901):错误 C2143:语法错误:缺少 ';' 在'{' 2>c:\tfs2013\main\source\packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(901) 之前:错误 C2447:'{':缺少函数头(旧式正式列表?) 2>c: \tfs2013\main\source\packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(935):错误 C2365:'testing::internal::CopyArray':重新定义;以前的定义是 'function' 2>c:\tfs2013\main\source\packages\gmock.1.7.0\lib\native\include\gtest\internal\gtest-internal.h(935): error C2998: 'int testing ::internal::CopyArray' : 不能是模板定义

你能帮我摆脱这个吗?

4

1 回答 1

0

我正在使用 cpprest 和 gmock。两者都有冲突,因此它给出了这些错误。为了摆脱这个,我们需要包含 _TURN_OFF_PLATFORM_STRING 预处理器指令。

有关更多详细信息,您可以关注关于 CPP Rest 和 gmock 问题的讨论

于 2017-04-25T07:02:11.007 回答