gpt4 book ai didi

c# - 返回一个通用的隐式引用

转载 作者:行者123 更新时间:2023-11-30 20:04:03 25 4
gpt4 key购买 nike

public class Display<T> where T : class, IDisplay<T>
{
public List<T> MyList { get; set; }
public int Total { get; set; }

public Display(List<T> myList, int total)
{
MyList = myList;
Total = total;
}
}

public interface IDisplay<T> where T : class
{
List<T> MyList { get; set; }
int Total { get; set; }
}


MyClass() : IMyClass
{
}

public interface IMyClass
{
}

当我使用时:

return new Display<IMyClass>(listOffIMyClass, anIntValue); 

我得到这个错误:IMyClass 不能用作泛型类型或方法“Display”中的类型参数“T”。没有从“IMyClass”到“IMyClass”的隐式引用转换。

最佳答案

嗯,是的 - 你说过 T用于 Display<T>必须实现 IDisplay<T> , 和 IMyClass没有实现 IDisplay<IMyClass> .

实际上只是想制作 Display<T>实现 IDisplay<T> ?如果是这样,您想要:

public class Display<T> : IDisplay<T> where T : class

现在您仍在约束 T成为引用类型,但您约束T实现IDisplay<T> .

关于c# - 返回一个通用的隐式引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13640996/

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