Visual studio googletest和VS2010:无法使用EXPECT_EQ
我已将一个项目转换为VS2010。它包括一个基于googletest的单元测试项目。当我使用宏Visual studio googletest和VS2010:无法使用EXPECT_EQ,visual-studio,visual-c++,googletest,Visual Studio,Visual C++,Googletest,我已将一个项目转换为VS2010。它包括一个基于googletest的单元测试项目。当我使用宏EXPECT\u EQ时,我得到以下链接器错误: LNK2019:未解析的外部符号“类测试::内部::字符串 __cdecl测试::内部::STRSTRSTREAMTOSTRING(类std::基本字符串流,类 std::分配器>*)“(?StrStreamToString@internal@测试@是吗? AVString@12@PAV?$basic_stringstream@DU?$char_trai
EXPECT\u EQ
时,我得到以下链接器错误:
LNK2019:未解析的外部符号“类测试::内部::字符串
__cdecl测试::内部::STRSTRSTREAMTOSTRING(类std::基本字符串流,类
std::分配器>*)“(?StrStreamToString@internal@测试@是吗?
AVString@12@PAV?$basic_stringstream@DU?$char_traits@D@性病病毒?
$allocator@D@函数“public:class”中引用了2@@std@@@Z)
测试::内部::字符串_uthiscall
测试::消息::GetString(void)const“(?)?
GetString@Message@测试@@QBE?AVString@internal@2@XZ)
当我使用EXPECT\u TRUE
时,一切正常。有人知道这个问题吗
谢谢EXPECT\u EQ尝试将数据值转换为字符串以用于显示目的;希望你是真的 在没有看到代码的情况下,您似乎正在测试一个用户类型,该用户类型可以编译此功能,但没有链接,即未实现此功能
这是一个常见的问题。如果EXPECT\u TRUE有效,您可能只想坚持它。您能给EXPECT\u EQ语句提供一个代码示例吗?这让我有点紧张了几个小时。我有一个模板专门化:
template struct是{static const bool value=false;};模板结构是{static const bool value=true;}然后我试着做EXPECT\u EQ(is\u thing::value,false)代码>和获取链接器错误<代码>EXPECT\u FALSE(is\u thing::value)代码>可以按照您的建议正常工作。你能再解释一下区别是什么/为什么会发生这种情况吗?@DavidDoria:问一个适当的问题并发布相关代码确实会更好。如果您愿意,可以通过评论链接到它。