有人可以举个例子吗?
我已经尝试过 null
、string.Empty
和对象初始化,但它们不起作用,因为默认值在编译时必须保持不变
最佳答案
只需使用空合并运算符和一个空实例 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”为空并且您分配了一个新引用,那么在调用上下文中将无法访问它。
关于C#-如何使用空列表<string>作为可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6947470/