关于软件结构的有关问题,小弟我也不是很清楚这叫什么有关问题。按照自己理解叫函数重写

关于软件结构的问题,我也不是很清楚这叫什么问题。按照自己理解叫函数重写?
写了一个DLL。DLL中有这样一段代码。
while(1)
{
  fly();
}

fly()
{
  ....;
  ....;
  
}

在另外一个cpp文件中 我想在FLY最后 加一些代码。我应该如何写呢。


说的可能不是很清楚,可以这样理解,

VOID A();
while(1)
{
  fly();
}

fly()
{
  ....;
  ....;
  A();
}
VOID A()
{
}
需要在另外的Cpp文件中写A()的代码


EXTERN VOID A();
VOID A()
{
   .....;
   ......;
}
应发如何实现呢?感觉没有太好的思路。
MFC   重写 

------解决方案--------------------
一般有两种方法来实现,虚函数或函数指针。

函数指针:
//dll中

void A()
{
}

void (*Fun)() = A;

//导出一个SetFunc函数用于设置Fun函数指针的新指向
__declspec(dllexport) void SetFunc(void (*NewFun)())
{
Fun = NewFun;
}

void fly()
{
....;
....;
Fun();
}


//使用DLL的CPP文件中

void A()
{
cout<<"新代码"<<endl;
}
//从DLL中导入的函数
__declspec(dllimport) void SetFunc(void (*NewFun)());


int main()
{
SetFunc(A);
}

------解决方案--------------------
直接函数调用,函数指针等
------解决方案--------------------
lz看起来对C++的基本概念还很陌生,还是好好读读基础的书吧,