Uczyłem się, że format funkcji operatorskich jestWeird operatora przeciążanie, "operator T &() const noexcept {return * _ptr;}"
(return value)operator[space]op(arguments){implementation}
ale w std::reference_wrapper
realizacji, istnieje operator funkcji przeciążenia uznanej jako operator T&() const noexcept { return *_ptr; }
.
Czy ten operator różni się od T& operator() const noexcept { return *_ptr; }
?. Jeśli oba są różne, to jaki jest pożytek z pierwszego?
Pytam, jaka jest składnia tworzenia castingu (jak w C# jest niesamowicie podobny do tego) –
format jest inny dla operatorów konwersji. –