我正在尝试使用 borland C++ Builder V5.5 构建一个 C++ 程序。一切正常,直到我尝试调用 ac 文件中定义的函数。编译器可以找到但链接不起作用。链接器无法找到从 c++ 文件调用的函数。.obj 文件被生成并且是项目 xml 文件的一部分。现在做任何人我如何解决这个错误。为了确保没有副作用,我开始了一个新项目,只是在构造函数中调用 c 函数调用。项目结构如下所示:
Form1.h 定义 Constructor 并包含定义 c 函数的标头
Form1.cpp实现Constructor并调用c函数
test.h 定义了一个 void 函数“void abc();”
test.c 包含 test.h 并实现了一个 void 函数“void abc() {}”
从 ...unit1.obj 引用的未解析的外部“abc()”
有人有想法吗?
这里有一些代码
#include <vcl.h>
#pragma hdrstop
#include "Multicopter_Model.h"
#include "Unit1.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
abcdefg();
return;
}
_
#ifndef RTW_HEADER_Multicopter_Model_h_
#define RTW_HEADER_Multicopter_Model_h_
void abcdefg();
#endif */
_
#include "Multicopter_Model.h"
/* Model initialize function */
void abcdefg()
{
}