Рубрики

Тип указателя this в C ++

В C ++ этот указатель передается как скрытый аргумент всем вызовам нестатических функций-членов. Тип этого зависит от объявления функции. Если функция-член класса X объявлена как const , типом этого является const X * (см. Код 1 ниже), если функция-член объявлена как volatile , тип этого типа является volatile X * (см. код 2 ниже), а если функция-член объявлена как const volatile , тип этого типа является const volatile X * (см. код 3 ниже).

Код 1

#include<iostream>

class X {

   void fun() const {

  

    // это передается как скрытый аргумент fun ().

    // Тип этого const X * const

    }

};

Код 2

#include<iostream>

class X {

   void fun() volatile {

  

     // это передается как скрытый аргумент fun ().

     // Тип этого является изменчивым X * const

    }

};

Код 3

#include<iostream>

class X {

   void fun() const volatile {

  

     // это передается как скрытый аргумент fun ().

     // Тип этого const volatile X * const

    }

};

Ссылки:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1905.pdf

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Тип указателя this в C ++

0.00 (0%) 0 votes