1. ホーム
  2. c#

C#-空のList<string>をオプションのパラメータとして使用する方法

2023-10-14 09:03:43

質問

誰かこの例を教えてください。

私は試してみました null , string.Empty とオブジェクトの初期化を行いますが、デフォルト値はコンパイル時に一定でなければならないため、うまくいきません。

どのように解決するのですか?

ただ、NULL合体演算子と、空の List<string>

public void Process(string param1, List<string> param2 = null) 
{
    param2 = param2 ?? new List<string>();

    // or starting with C# 8
    param2 ??= new List<string>();
}

この問題は、もし "param2" が NULL で、新しい参照を割り当てた場合、呼び出し側のコンテキストでアクセスできなくなることです。