Я розумію , більшість перевантаження операторів, за винятком операторів доступу члена ->, .*, і ->*т.д.
Зокрема, що передається цим операторським функціям, а що потрібно повернути?
Як функція оператора (наприклад operator->(...)) знає, до якого члена відноситься? Чи може це знати? Це навіть потрібно знати?
Нарешті, чи є якісь міркування щодо суперечності, які потрібно враховувати? Наприклад, при перевантаженні чогось подібного operator[], як правило, вам знадобиться як версія const, так і non-const. Чи вимагають оператори доступу членів const та non-const версії?
constі не- constверсії operator->не потрібні , але надання обох може бути корисним.
->*і .*. Насправді вони навіть не згадують про них! Я відчуваю, що вони рідко зустрічаються в FAQ, але я з радістю пов'язую це запитання з FAQ. Будь ласка, не закривайте це як манеру поширених запитань!