Перехватить конструктор класса c ++ с LD_PRELOAD

Я последовал за этот пример перехватывать функции C ++ в классе.

Однако теперь я хочу перехватить конструктор и дескриптор класса, а не только функции-члены.

В примере он делает typedef unsigned int (Foo::*methodType)() const;, Я не думаю, что вы можете печатать конструкторы / деструкторы в C ++.

Как мне это сделать?

1

Решение

Я старался
typedef void (QDBusConnection::*MyFunction)(); и это работает, я могу назвать это с (this->*origMethod)(); хотя origMethod является деструктором и не имеет спецификатора возврата.

Я написал мои шаги о том, как сделать перехват функций деструктора и статического класса здесь

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

1

Другие решения


По вопросам рекламы [email protected]