Zum BeispielWenn der Dereferenzierungsoperator (*) überlastet ist, ist die Verwendung von * davon betroffen?
class Person{
string name;
public:
T& operator*(){
return name;
}
bool operator==(const Person &rhs){
return this->name == rhs.name;
}
bool operator!=(const Person &rhs){
return !(*this == rhs); // Will *this be the string name or the Person?
}
}
Wenn *this
landet this
zu einem string
anstelle eines Person
dereferencing, ist es eine Abhilfe, die die Verwendung von *
als Dereferenzierungsoperator außerhalb der Klasse unterhält?
Es wäre ein ziemliches Hindernis, wenn ich *
nicht überlasten könnte, ohne die Verwendung von *this
aufzugeben.
Die Überlastung gilt für Person-Objekte. Aber 'das' ist ein Personen * -Zeiger *. – Galik
@Galik Dieser Kommentar sollte eine (akzeptierte) Antwort sein. – YSC