成员函数指向整数?

use*_*821 5 c++ visual-studio-2008

是否可以将虚拟地址作为成员函数指针的整数?

我试过了.

void (AClass::*Test)();
Test = &AClass::TestFunc;
int num = *(int*)&Test;

但所有这一切都是让我获得函数的jmp的虚拟地址.我需要实际的功能虚拟地址.

Ama*_*9MF 0

虽然我不能明确地说是否有一种可移植的方法可以做到这一点,但我通常建议创建一个静态包装函数来提供对类方法的这种类型的外部访问。否则,即使您成功了,您也会创建应用程序与该类实现的非常紧密的耦合。