Übergabe nach Wert (nach Wert) und Übergabe nach Adresse (nach Referenz) sind die übliche Methode zur Übergabe von Parametern bzw. die Methode zur Übergabe nach Adresse. Die Methode zur Übergabe nach Adresse muss vor der Verwendung mit dem Schlüsselwort ref geändert werden ist die Ausgaberückübertragung, die mit ref identisch ist. Der wichtige Unterschied besteht darin, dass die im vorherigen Abschnitt erwähnte Referenz in der referenzierten Methode initialisiert werden muss.
using System; /****************************** * Chapter:C#难点逐个击破(一) * Author:王洪剑 * Date:2010-1-15 * Blog:http://www.51obj.cn/ * Email:walkingp@126.com * Description:重点讲解输出参数out * ***************************/ namespace TestOut { class Program { /// <summary> /// out的输出值、返回值 /// </summary> /// <param name="name"></param> /// <returns></returns> static string OutResultMethod(out string name) { string _name = "Wang Hongjian"; name = _name; string __name = "Zheng Zi"; return __name; } static void Main(string[] args) { string _name = "Zhang Yu"; Console.WriteLine("调用前:{0}", _name); string result= OutResultMethod(out _name); Console.WriteLine("调用后:{0}",_name); Console.WriteLine("返回结果:{0}",result); Console.ReadKey(); } } }
Laufende Ergebnisse:
out wird in tatsächlichen Projekten häufiger verwendet, da out mehrere Werte zurückgeben kann
class Program { /// <summary> /// out的输出值、返回值 /// </summary> /// <param name="name"></param> /// <returns></returns> static string OutResultMethod(out string name,out string password) { string _name = "Wang Hongjian"; name = _name; string _password = "123456"; password = _password; string __name = "Zheng Zi"; return __name; } static void Main(string[] args) { string _name = "Zhang Yu"; string _password; Console.WriteLine("调用前:{0}", _name); string result = OutResultMethod(out _name, out _password);//多个参数传递 Console.WriteLine("调用后:{0}",_name); Console.WriteLine("返回结果:{0}",result); Console.ReadKey(); } }
Wenn Sie an mehrere Parameter denken, müssen Sie über die Verwendung eines Arrays nachgedacht haben. Ja, die Verwendung von Arrays ist eine gute Möglichkeit. Das Array selbst verpackt und „kapselt“ Parameter desselben Typs in ein Objekt und übergibt sie an die Methode. Dadurch können mehrere Parameter vereinfacht werden. Das Schreiben von Methoden kann auch ähnliche Effekte wie eine Überladung erzielen.
static void OutArrayMethod(out string[] strArr) { int i = 0; string[] _strArr = new string[10]; while (i < _strArr.Length) { _strArr[i] = "第" + i + "个成员"; i++; } strArr = _strArr; } static void Main(string[] args) { string[] _strArr=new string[10]; OutArrayMethod(out _strArr); foreach (string str in _strArr) { Console.WriteLine(str); } Console.ReadKey(); }
Betriebseffekt:
Das Obige ist der Inhalt der C#-Schwierigkeiten nacheinander (2): Out-Rückgabeparameter, bitte beachten PHP für mehr verwandte Inhalte auf chinesischer Website (m.sbmmt.com)!