gpt4 book ai didi

c# - new() 约束对类定义有何作用?

转载 作者:太空狗 更新时间:2023-10-30 00:15:31 27 4
gpt4 key购买 nike

我看到了这个代码示例,想知道 new() 约束的目的是什么:

public class Client<T> : IClient where T : IClientFactory, new()
{
public Client(int UserID){ }
}

最佳答案

这称为“‘新’约束”。 Here's the documentation在上面。

The new constraint specifies that any type argument in a generic class declaration must have a public parameterless constructor. To use the new constraint, the type cannot be abstract.

(强调我的)

基本上,每当您在类中的某处创建新的 T 时都需要它,以确保您只能传递编译器可以 创建一个新实例。

关于c# - new() 约束对类定义有何作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13806660/

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