StructPerformance: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 180: | Zeile 180: | ||
== Rückgabeparameter == | == Rückgabeparameter == | ||
Da die Rückgabewerte von Methoden einer Variablen zugewiesen werden müssen gilt auch für diese call by value, also dass sie kopiert werden. Zudem kann nur ein Wert von einer Methode zurückgegeben werden. Um dies umgehen zu können gibt es bei C# zusätzlich zu '''ref''' auch noch das Schlüsselwort '''out''' für Parameter. Dieses dient zur Deklaration von Rückgabeparametern. Damit ist es nicht nur möglich neben der Parameterübergabe auch die Werterückgabe performanter zu gestalten sondern zusätzlich können auch beliebig viele Werte von einer Funktion zurückgegeben werden, ohne dass eine spezielle Klasse zur Datenhaltung oder ähnliches benötigt wird. | |||
Theoretisch können auch Parameter die mit '''ref''' übergeben werden zur Rückgabe von Werten verwendet werden. Der Unterschied zu '''out''' Parametern ist allerdings der, dass '''ref''' Parameter im Voraus immer initialisiert sein müssen während '''out''' Parameter auch ohne Initialisierung übergeben werden können. | |||
== Verwendung von Structs == | == Verwendung von Structs == | ||
