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

但是我明明在TestBase类的cpp文件中定义了方法,为什么会找不到呢?
上网查资料才知道,模板类不能分离头文件,所有的代码必须放在一起,编译器不会查找cpp文件,只会在声明方法的文件内查找定义。
总结:模板类的声明和定义要放在一个文件内。
首先看一张图,TestBase是我定义的模板类,assertEquals是TestBase的静态函数。

但是我明明在TestBase类的cpp文件中定义了方法,为什么会找不到呢?
上网查资料才知道,模板类不能分离头文件,所有的代码必须放在一起,编译器不会查找cpp文件,只会在声明方法的文件内查找定义。
总结:模板类的声明和定义要放在一个文件内。
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。