Let foo
mit einem Kopie Zuweisungsoperator eine Struktur oder Klasse sein:Gibt es jemals einen stichhaltigen Grund, * das vom Kopierzuweisungsoperator nicht zurückzugeben?
struct foo {
foo &operator=(const foo &); // or with some other return type?
};
Gibt es jemals einen vernünftigen Grund, etwas anderes als *this
vom operator=()
zurückzukehren? Es für etwas zu verwenden, das nichts mit der Aufgabe zu tun hat, gilt nicht als sinnvoll.
Wenn Sie 'this *' zurückgeben, können Sie den Zuweisungsoperator wie 'i = j = k = ...' verketten. Sie können andere Dinge zurückgeben, aber wie nützlich das ist, hängt von Ihren Definitionen ab und davon, wie Ihre Klassen verwendet werden sollen. – Alex
Ausdruckvorlagen. –
@AlanStokes Es wäre schön, wenn Sie das weiter ausführen würden, wissen Sie. –