我已将项目转换为VS2010。它包括一个基于googletest的单元测试项目。当我使用宏EXPECT_EQ
时,我收到以下链接器错误:
LNK2019:未解析的外部符号“class testing :: internal :: String __cdecl testing :: internal :: StrStreamToString(class std :: basic_stringstream,class std :: allocator> *)“(?StrStreamToString @ internal @ testing @@ YA? AVString @ 12 @ PAV?$ @ basic_stringstream杜?$ @ char_traits @ d @@性病V' $ allocator @ D @ 2 @@ std @@@ Z)在函数“public:class”中引用 testing :: internal :: String __thiscall testing :: Message :: GetString(void)const“(? 的GetString @消息@ @@测试QBE?AVString @内部@ 2 @ XZ)
当我使用EXPECT_TRUE
时,一切正常。有人知道这个问题吗?
谢谢
答案 0 :(得分:1)
EXPECT_EQ尝试将数据值转换为字符串以供显示; EXPECT_TRUE没有。
如果没有看到您的代码,您似乎正在测试可以编译此功能但未链接的用户类型,即未实现。
这是一个常见问题。如果EXPECT_TRUE有效,您可能只想坚持下去。