繁体   English   中英

C ++链接器错误

[英]C++ linker error

我有一个文件A.cpp ,其中包含以下几行:

#include"B.h"
int main(int argc, char **argv)
{
  ...
  char *input_file = *argv;  
  B *definition = new B(input_file);
  ...
}

Bh ,我有以下几点:

class B
{
  public:
   // Constructors
   B(void);
   B(const char *filename);
   ...
}

编译时,出现以下错误: undefined reference to 'B::B(char const*)'

有关如何修复的任何建议?

谢谢。

似乎您已为函数指定了标题,但从未实际编写函数的主体。

您需要定义功能IE

B::B(const char *filename){
  // Do stuff
}

在B.cpp中

您的问题与const正确性无关。

您需要为B::B(char const *) 您仅提供了B::B(char const *) ,并且链接程序抱怨说它实际上找不到该函数。

暂无
暂无

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

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