Heim >Backend-Entwicklung >C++ >Zeiger vs. Referenzen: Wann sollte man sie jeweils in Funktionsparametern verwenden?
Zeiger vs. Referenzen bei der Parameterübergabe
In Bezug auf Zeiger und Referenzen als Funktionsparameter weisen die bereitgestellten Codefragmente funktionale Ähnlichkeiten auf:
int foo(bar* p) { return p->someInt(); }
und
int foo(bar& r) { return r.someInt(); }
Es gibt jedoch subtile Unterschiede zwischen den beiden:
In C werden Referenzen absichtlich nicht explizit mit Zeigern implementiert. Stattdessen dienen sie als „Synonyme“ für die referenzierte Variable. Dieses Konzept ermöglicht Compiler-Optimierungen, bei denen Zeiger unnötig wären.
Weitere bemerkenswerte Unterschiede zwischen Zeigern und Referenzen sind:
Das obige ist der detaillierte Inhalt vonZeiger vs. Referenzen: Wann sollte man sie jeweils in Funktionsparametern verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!