C++模板函数报错:undefined reference to ‘xxxxxxxxx‘

C++模板函数报错:undefined reference to ‘xxxxxxxxx‘,第1张

C++模板函数报错:undefined reference to ‘xxxxxxxxx‘

错误日志
在写一个BA优化函数时,把模板函数的声明写在了.h中,定义在.cpp中,编译时报错:

undefined reference to 'xxxxxx'

xxxxxx是模板函数的名字。

解决方法
undefined reference这个报错太常见了,意思就是找不到这个函数的定义在哪。一般来说是因为链接库错误的原因。

但是这个模板函数不一样,模板函数的声明和定义要放在一起,如果分开写在.h和.cpp中,.cpp文件中的定义就会被忽略掉,导致编译时,模板函数只有一个声明的壳而没有实体,编译器就会报找不到这个函数了。

第一次碰到这样导致undefined reference的情形,debug了两天,纯纯属于浪费时间了。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5699708.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存