csharp 【C#】参考キーワードで参照型を参照渡しした时の挙动に关して
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp 【C#】参考キーワードで参照型を参照渡しした时の挙动に关して相关的知识,希望对你有一定的参考价值。
class RefTest
{
public void MainMethod()
{
RefTestClass a = new RefTestClass();
a.VAL = "test";
test(ref a);
Console.WriteLine(a.VAL); // vvalvalnew が返ってくる。
test2(a);
Console.WriteLine(a.VAL); // valval2 が返ってくる。
}
/// <summary>
/// ref付き参照型渡し
/// 参照する場所を変更できる。
/// </summary>
/// <param name="val"></param>
private static void test(ref RefTestClass val)
{
val.VAL = "valval"; // コール元メソッドから見て、この処理は有効
val = new RefTestClass(); // 参照する場所を変更した、と同等の処理
val.VAL = "valvalnew"; // コール元メソッドから見て、この処理は有効!
}
/// <summary>
/// ref無し参照型渡し
/// 参照する場所を変更できない。
/// </summary>
/// <param name="val"></param>
private static void test2(RefTestClass val)
{
val.VAL = "valval2"; // コール元メソッドから見て、この処理は有効
val = new RefTestClass(); // newはしたが、このメソッド内だけのスコープ(返らない)
val.VAL = "valval2new"; // コール元メソッドから見て、この処理は無効
}
}
public class RefTestClass
{
public string VAL { get; set; }
}
以上是关于csharp 【C#】参考キーワードで参照型を参照渡しした时の挙动に关して的主要内容,如果未能解决你的问题,请参考以下文章
r キーワードモニタ
r キーワードレベルの调整
r キーワード合成·アカウント情报付与
sh 谷歌:未指定キーワードを発生させずに検索する
text cvs,subversionのIdキーワードの行を削除して,书き换える#code #sh
csharp C#からMsBuildをコードで実行(Microsoft.Build名前空间,BuildManager)