调用类的函数,出错,求解!
这个代码是新建的UNIT5.H
- C/C++ code
//---------------------------------------#pragma hdrstop#include "Unit5.h"//---------------------------------------#pragma package(smart_init)void ClosePro(void){ Application->Terminate();}我在UNIT3的 已经USES了UNIT5.H
但是我在UNIT3 调用
- C/C++ code
//---------------------------------------#include <vcl.h>#pragma hdrstop#include "Unit3.h"#include "Unit5.h"//---------------------------------------#pragma package(smart_init)#pragma link "Unit2"#pragma resource "*.dfm"TFmain *Fmain;//---------------------------------------__fastcall TFmain::TFmain(TComponent* Owner) : TFbase(Owner){}//---------------------------------------void __fastcall TFmain::SpeedButton1Click(TObject *Sender){ ClosePro();}这句代码的时候。显出
E2451 Undefined symbol 'ClosePro'
[解决办法]
我测试过了,这样可以,你对照下unit5的代码
unt5.h文件
#ifndef Unit5H
#define Unit5H
extern void ClosePro(void);
#endif
----------
unit5.cpp文件
#pragma hdrstop
#include <Forms.hpp>
#include "Unit5.h"
#pragma package(smart_init)
void ClosePro(void)
{
Application->Terminate();
}