gpt4 book ai didi

c# - 关键字 'params' 究竟是如何工作的?

转载 作者:太空狗 更新时间:2023-10-29 20:58:01 25 4
gpt4 key购买 nike

以下代码示例打印:

T
T[]
T[]

虽然前两行符合预期,但为什么编译器选择参数数组作为常规数组?

public class A
{
public void Print<T>(T t)
{
Console.WriteLine("T");
}

public void Print<T>(params T[] t)
{
Console.WriteLine("T[]");
}
}

class Program
{
static void Main(string[] args)
{
A a = new A();
a.Print("string");
a.Print("string","string");
a.Print(new string[] {"a","b"});
}
}

最佳答案

引擎盖下

a.Print("string","string");

只是

的语法糖
a.Print(new string[]{"string","string"});

编辑:正如我所说,params 关键字只会自动为您创建数组,您告诉编译器:要么直接接受 T 数组,要么使用 X输入参数以构造该数组。

关于c# - 关键字 'params' 究竟是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/711828/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com