ホームページ  >  記事  >  バックエンド開発  >  C# の問題を 1 つずつ解決します (2): 戻り値パラメーター

C# の問題を 1 つずつ解決します (2): 戻り値パラメーター

黄舟
黄舟オリジナル
2016-12-22 14:05:061105ブラウズ

値渡し (値渡し) とアドレス渡し (参照渡し) は、それぞれパラメーターを渡す通常の方法と ref 宣言の方法です。アドレス渡しメソッドは、使用する前に ref キーワードで変更する必要があります。出力リターン転送は ref と多くの類似点がありますが、重要な違いは、前のセクションで説明した ref が参照先メソッド内で初期化される必要があることです。

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(); 
} 
} 
}

実行結果:

C# の問題を 1 つずつ解決します (2): 戻り値パラメーター

out は複数の値を返すことができるため、配列を使用することを考えたことがあるでしょう。良い方法は、配列自体が同じ型のパラメーターをパッケージ化してオブジェクトに「カプセル化」し、それらをメソッドに渡すことです。これにより、複数パラメーターのメソッドの作成が簡素化され、オーバーロードと同様の効果が得られます。

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(); 
} 
}

操作の効果:

C# の問題を 1 つずつ解決します (2): 戻り値パラメーター 上記は、C# の難易度を 1 つずつ分解する内容です (2):out return パラメーターの詳細については、PHP 中国語 Web サイト (www. php.cn)!


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。