C++模板类报错:函数未定义

首先看一张图,TestBase是我定义的模板类,assertEquals是TestBase的静态函数。

 但是我明明在TestBase类的cpp文件中定义了方法,为什么会找不到呢?

上网查资料才知道,模板类不能分离头文件,所有的代码必须放在一起,编译器不会查找cpp文件,只会在声明方法的文件内查找定义。

总结:模板类的声明和定义要放在一个文件内。

原文地址:https://www.cnblogs.com/bwjblogs/p/14838142.html