Heim > Backend-Entwicklung > C#.Net-Tutorial > Was sind lokale Ref-Variablen und Ref-Rückgabewerte in C# 7.0?

Was sind lokale Ref-Variablen und Ref-Rückgabewerte in C# 7.0?

PHPz
Freigeben: 2023-09-11 22:37:02
nach vorne
840 Leute haben es durchsucht

C# 7.0 中的 Ref 局部变量和 Ref 返回值是什么?

Referenzrückgabewerte ermöglichen es Methoden, stattdessen einen Verweis auf eine Variable zurückzugeben als ein Wert.

Der Aufrufer kann wählen, ob die zurückgegebene Variable als behandelt werden soll Wert oder Referenz.

Der Aufrufer kann eine neue Variable erstellen, die selbst eine Referenz auf den Rückgabewert ist, genannt ref local.

Im folgenden Beispiel hat eine Änderung der Farbe keine Auswirkung Rohe Array-Farbe

Example

class Program{
   public static void Main(){
      var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
      string color = colors[3];
      color = "Magenta";
      System.Console.WriteLine(String.Join(" ", colors));
      Console.ReadLine();
   }
}
Nach dem Login kopieren

Output

blue green yellow orange pink
Nach dem Login kopieren

Um dies zu erreichen, können wir Ref-Locals verwenden

Example

public static void Main(){
   var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
   ref string color = ref colors[3];
   color = "Magenta";
   System.Console.WriteLine(String.Join(" ", colors));
   Console.ReadLine();
}
Nach dem Login kopieren

Output

blue green yellow Magenta pink
Nach dem Login kopieren
Nach dem Login kopieren

Ref gibt -

Im folgenden Beispiel zurück, auch wenn wir die Farbe ändern , es hat auch keine Wirkung Ursprüngliche Array-Farbe

Beispiel

class Program{
   public static void Main(){
      var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
      string color = GetColor(colors, 3);
      color = "Magenta";
      System.Console.WriteLine(String.Join(" ", colors));
      Console.ReadLine();
   }
   public static string GetColor(string[] col, int index){
      return col[index];
   }
}
Nach dem Login kopieren

Ausgabe

blau grün gelb orange rosa

Beispiel

class Program{
   public static void Main(){
      var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
      ref string color = ref GetColor(colors, 3);
      color = "Magenta";
      System.Console.WriteLine(String.Join(" ", colors));
      Console.ReadLine();
   }
   public static ref string GetColor(string[] col, int index){
      return ref col[index];
   }
}
Nach dem Login kopieren

Ausgabe

blue green yellow Magenta pink
Nach dem Login kopieren
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas sind lokale Ref-Variablen und Ref-Rückgabewerte in C# 7.0?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage