Хочется в MSVC++ по выражению для вызова виртуальной функции (например, Obj->Func) получить ее фактический адрес, лежащий в vtable, на который при вызове выполняется call. Сравнительно честные методы получения адреса члена в C++ предполагают уточнение имени функции именем класса, что предполагает обращение к статической vtable, созданной для класса (у конкретного объекта она может быть подменена). А если лезть руками в vtable, то нужно знать порядковый номер функции. Без этих извращений никак?
Здравствуйте, kov_serg, Вы писали:
_>Штатными методами — никак.
Грустно. Что показательно, даже MS, давно сделавшая и периодически обновляющая библиотеку Detours для перехвата различных API, не озаботилась сделать у себя в компиляторе такую возможность, хотя работы на копейку...
По сути, и нештатными методами, кроме трассировки кода, тоже никак.