VS2015中的gtest链接错误:cpp文件

时间:2017-12-12 15:27:39

标签: c++ linker-errors googletest

我在VS2015中创建了一个示例项目,它有一个头文件和一个cpp文件。我的文件内容是:

Header.h

int fun2(int a);

Source.cpp

#include "Header.h"

void main()
{
 fun()2;
}
int fun2(int a) {
  return ++a;
}

遵循的步骤:

  1. 下载Google test(gtest-1.7.0)
  2. 将gtest编译为静态库
  3. 创建单元测试项目
  4. 制作测试用例
  5. 如果在给定项目的头文件中定义,上面的设置工作正常并且能够测试该函数。但是如果函数在Source.cpp文件中定义,如上所述,则编译失败,并出现以下链接错误:

    Error   LNK2019 unresolved external symbol "int __cdecl fun2(int)" (?fun2@@YAHH@Z) referenced in function "private: virtual void __thiscall a_b_Test::TestBody(void)" (?TestBody@a_b_Test@@EAEXXZ)  
    
    Error   LNK1120 1 unresolved externals
    

    请让我知道如何解决此错误或如何使用gtest对cpp文件中定义的函数进行单元测试? 我已经按照link给出的步骤进行了操作。

0 个答案:

没有答案