在许多脚本语言中,我们都有这样的编程方法:
首先,有一个名为 func 的函数:
void func()
{
}
其次,我想在客户端调用此函数时记录一些信息,但我不想修改函数,所以我可以执行以下操作:
void (*pfunc)(void) = func;
void func()
{
log("Someone call fund");
pfunc();
}
之后,任何调用基金的人都会调用我的“覆盖”函数。这在许多脚本语言中都可以。我可以用 C 语言做同样的事情吗?以及如何编码?
我想用这种方法在一些3party库中做一些工作,所以我必须做一些影响链接过程的事情,而不仅仅是编译过程。