gpt4 book ai didi

c# - 使用泛型方法

转载 作者:行者123 更新时间:2023-12-02 20:19:41 25 4
gpt4 key购买 nike

我有很多这样的方法:

public UIPCompanyButton AddCompanyButton (string name, Company company, UIEventListener.VoidDelegate methodToCall, GameObject contents)
{
return UIPCompanyButton.Create (name, company, methodToCall, contents);
}

我想用这样的单一方法替换:

    public T AddButton<T,K>(string name, K item, UIEventListener.VoidDelegate methodToCall, GameObject contents) where T:UIPMenuButton
{
return T.Create(name, item, methodToCall, contents);
}

这显然不适用于 T.Create 部分。我需要特定的语法来执行此操作吗?

我也愿意接受一种具有相同结果的不同方法:一种单一方法,它接受派生的 menuButton 并使用正确的“item”类创建正确的菜单按钮。

最佳答案

不,您不能在泛型类型上调用静态方法 - 不能没有反射。除此之外,没有办法限制泛型类型具有特定的静态成员。最接近的是无参数构造函数约束。

关于c# - 使用泛型方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17980222/

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