繁体   English   中英

C ++:对函数的未定义引用

[英]C++: undefined reference to function

我有一个问题,我想使用lib hqp编译一些软件。 该库使用adolc,但旧版本已弃用该函数。 因为我只有新版本,所以缺少一个类(adoublev),并且出现编译错误。 现在,我尝试编写一个包装器,但是在这里出现错误。

以前:直到现在我还不了解问题,因此使用新版本的adolc编译了hqp。 我编写了一个简单的adoublev类,该类已实现了必需的运算符(operator [])。

现在我要编译一个例子。 我懂了

Prg_T2Topt.o:(.rodata._ZTV10Prg_T2Topt[vtable for Prg_T2Topt]+0x20):
  undefined reference to `Omu_Program::consistic(int, double, adoublev const&, adoublev const&, adoublev&)'

注意:Prg_T2Topt。*是我的示例,Omu_Program是hqp的一部分。

为什么第一次安装hqp不会因缺少adoublev的声明/定义错误(使用gcc / g ++)而导致错误? 我需要更新hqp以便不再使用adoublev吗?

即使示例中未实现此方法,为什么我的示例编译仍会导致有关conformic的错误?

该示例可以在http://codepad.org/Cv0tdoyShttp://codepad.org/ezQQPUg4中找到(有点冗长)

由于您的类Prg_T2Topt是基于Omu_Program的,因此它继承了Omu_Program的方法,包括consolidic(),并且由于您的类未覆盖consolidic(),因此编译器正在尝试使用Omu_Program :: consistic()。

您要链接到哪些库? 看起来您在链接阶段丢失了一些东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM