用LD_PRELOAD截取c++类构造函数

Intercept c++ class constructor with LD_PRELOAD

本文关键字:c++ 构造函数 截取 PRELOAD LD      更新时间:2023-10-16

我按照这个例子截取了类中的C++函数。

然而,现在我想要截取类的构造函数和解构造函数,而不仅仅是成员函数。

在该示例中,他执行typedef unsigned int (Foo::*methodType)() const;。我认为你不能在c++中对构造函数/析构函数进行类型定义。

我该怎么做?

我试过了typedef void (QDBusConnection::*MyFunction)();和它的工作原理,我可以用(this->*origMethod)();调用它,即使origMethod是一个析构函数并且没有返回说明符。

我在这里写了关于如何拦截析构函数和静态类函数的步骤

http://www.osletek.com/learning-center/150/Intercepting_C%2B%2B_functions_using_LD_PRELOAD