Перегрузка операторов доступа к членам ->, .* (C++)

Я понимаю большинство операторов перегрузки, за исключением операторов доступа к членам ->, .*, ->* и т.д.

В частности, что передается этим операторным функциям и что должно быть возвращено?

Откуда операторная функция (например, operator->(...) ) знает, на какой член ссылается? Может ли она знать? И вообще, нужно ли это знать?

Наконец, есть ли какие-либо соображения по поводу const, которые необходимо принимать во внимание? Например, при перегрузке чего-то вроде operator[], как правило, вам понадобится как const, так и non-const версия. Требуют ли операторы доступа к членам const и non-const версии?

118
задан sbi 4 January 2014 в 07:05
поделиться