C#-如何使用空列表<string>作为可选参数

标签 c# c#-4.0

有人可以举个例子吗?

我已经尝试过 nullstring.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/

相关文章:

c# - 编辑代码时出现调试错误

c# - 如何使用 CUdeviceptr 执行 CudaMemcpy

c# - 将 IDbSet<class> 传递给泛型方法

c# - 委托(delegate)的目的

c# - MSTest、MyClassInitialize 和实例变量

c# - 为什么 Parallel.Invoke 无法完成所有操作?

c# - FileSystemWatcher 不会在一段时间后触发

html - 在 Asp.net 中从代码隐藏添加 HTML

.NET ORM 适配器 : LLBLGEN vs nHydrate

c# - 简单 `Assert.IsAssignableFrom<T>` 失败