Was bedeutet out in C#?
2 Antworten
Bei so was sollte man als Entwickler eigentlich in der Lage sein selber in die Doku zu schauen, falls du da etwas nicht versteht kann man natürlich immer noch nachfragen.
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/out
In der Regel wird es genutzt um Parameter zu kennzeichnen, es signalisiert, dass die Funktion die Referenz zu der variable bekommt und diese auf einen neuen Wert setzt. Ähnlich zu ref, aber es muss ein neuer Wert gesetzt werden. Eventuell ist es einfacher zu verstehen wenn man sich erst mal das ref keyword anschaut.
Was ist denn das genaue Problem, versteht du nicht wie man das nutzt, wann man das nutzt, irgendein Wort auf das sich die Doku bezieht nicht?
Oder hast Du es über die Antworten hier jetzt gelernt?
ich glaube ich muss mir allgemein einige dinge noch mal anschauen um das zu verstehen
hab auch vergessen was rückgabewerte sind
und auch was noch ma genau parameter bedeutet vergessen
Parameter sind die Werte, die du an eine Funktion übergibst. Also das zwischen den runden Klammern ().
Rückgabewerte sind das was du in einer Funktion mit Return zurück gibst.
Keine Sorge, out und ref Sind erst mal nicht so wichtig und am Anfang vermutlich in vielen Situationen eher ein anti pattern, also ein schlechter Ansatz. Daher nicht so schlimm wenn du das nicht sofort verstehst. Out bei generics ist noch mehr niche.
out sorgt dafür, dass Methodenparameter nach dem Aufruf ebenfalls zurückgegeben werden. Man kann diese Parameter Variablen zuweisen und hat somit einen ähnlichen Effekt wie eine Methode mit mehreren Rückgabewerten.
public void Calculate(int a, int b, out int sum, out int product)
{
sum = a + b;
product = a * b;
}
Hier wie man es verwendet:
int sum, product
Calculate(5, 3, out sum, out product);
Console.WriteLine($"Sum: {sum}, Product: {product}");
Ich hab bereits in der Doku nachgeschaut gehabt, hatte aber nicht verstanden was dort geschrieben ist