dem ref
-Schlüsselwort
Das ref
-Schlüsselwort wird in den folgenden Kontexten verwendet:
- In einer Methodensignatur und in einem Methodenaufruf, um ein Argument an eine Methode als Verweis zu übergeben.
public void M(ref int refParameter)
{
refParameter += 42;
}
- In einer Methodensignatur, um einen Wert an den Aufrufer als Verweis zurückzugeben. Weitere Informationen finden Sie unter
ref return
.
public ref int RefMax(ref int left, ref int right)
{
if (left > right)
{
return ref left;
}
else
{
return ref right;
}
}
- In einer Deklaration einer lokalen Variablen, um eine Verweisvariable zu deklarieren.
public void M2(int variable)
{
ref int aliasOfvariable = ref variable;
}
- Als Teil eines bedingten Ref-Ausdrucks oder eines Ref-Zuweisungsoperators.
public ref int RefMaxConditions(ref int left, ref int right)
{
ref int returnValue = ref left > right ? ref left : ref right;
return ref returnValue;
}
- In einer
struct
-Deklaration, um eineref struct
zu deklarieren. Weitere Informationen finden Sie im Artikel zuref
-Strukturtypen.
public ref struct CustomRef
{
public ReadOnlySpan<int> Inputs;
public ReadOnlySpan<int> Outputs;
}
- In einer
ref struct
-Definition zum Deklarieren einesref
-Felds. Weitere Informationen finden Sie im Abschnittref
-Felder des Artikels zuref
-Strukturtypen.
public ref struct RefFieldExample
{
private ref int number;
}
- In einer generischen Typdeklaration, um anzugeben, dass ein Typparameter ref-struct-Typen (
allows ref struct
) zulässt.
class RefStructGeneric<T, S>
where T : allows ref struct
where S : T
{
// etc
}
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.