На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Qraizer, Hsilgos
  
> Как получить адрес своего агрегата?
    Есть класс, назовём его A. Есть другой класс, назовём его B, этот класс имеет поле (член-данное), назовём его f1. Поле f1 – экземпляр A. Кроме f1, класс B имеет ещё как минимум одно поле другого типа, назовём его f2. Класс A имеет метод (функцию-член), назовём его m. Есть экземпляр B, назовём его b. Метод m может получить указатель на f1:
    ExpandedWrap disabled
      A B::=&B::f1;
    . А как по этому p получить адрес объекта b? Я попробовал вычесть p из this и привести тип, пишет, что у бинарного минуса операнд типа указатель на класс не валиден. Методу m нужно значение f2, а делать специально в классе B ещё один метод у которого будет на один параметр меньше, и который только вызовет f1.m(f2), не охота. Есть кроме прямого текста ещё какой-то способ получить адрес объекта, членом которого является *this?
    Сообщение отредактировано: Ирокез -
    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0161 ]   [ 16 queries used ]   [ Generated: 16.04.24, 21:14 GMT ]