Здравствуйте, jazzer, Вы писали:
А>>Есть объект класса С++, и я знаю указатель на один из его членов.
А>>Как получить указатель на сам объект? Можно ли это сделать без грязных хаков, offsetof-ов, reinterpret_cast-ов и пр. ?
J>Без хаков — нельзя, int* не содержит никакой информации о классе. Так что только через offsetof+reinterpret_cast, но это ,сам понимаешь, хождение по граблям, потому что ты никак не сможешь проконтролировать в коде, что указатель, который к тебе пришел, указывает именно на нужный член нужного класса.
J>А что за задача возникла, что такое понадобилось?
иногда это бывает оправданно.
здесьАвтор: night beast
Дата: 01.11.10