Zuweisungsoperator verschieben und this != &rhs
Im Standardzuweisungsoperator für eine Klasse ist es üblich, ein this != einzuschließen &rhs-Prüfung, um eine Änderung des aufrufenden Objekts bei der Zuweisung an sich selbst zu vermeiden. Ist diese Prüfung jedoch im Verschiebungszuweisungsoperator erforderlich?
Antwort:
Die Meinungen darüber, ob die this != &rhs-Prüfung im Verschiebungszuweisungsoperator erforderlich ist, gehen auseinander. Einige argumentieren, dass es eine gute Praxis ist, es immer einzubeziehen, während andere glauben, es sei unnötig und potenziell schädlich.
Begründung:
Schlussfolgerung:
Letztendlich, ob einbezogen werden soll oder nicht Die this != &rhs-Prüfung im Verschiebungszuweisungsoperator ist eine Frage der persönlichen Vorlieben und des Kontexts. Es ist im C-Standard nicht erforderlich, aber einige Entwickler entscheiden sich möglicherweise dafür, es aus Sicherheitsgründen einzubeziehen oder eine unbeabsichtigte Selbstzuweisung zu vermeiden.
Das obige ist der detaillierte Inhalt vonIst eine „this != &rhs'-Prüfung in einem Verschiebungszuweisungsoperator erforderlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!