gpt4 book ai didi

C# 泛型和类型

转载 作者:太空狗 更新时间:2023-10-30 00:57:50 25 4
gpt4 key购买 nike

我有一个类似的通用方法:

public abstract T method<T>(int arg) where T : class, new();

然后我在子类中实现

public MyType method<MyType>(int arg){
MyType e = new MyType();

e.doStuff (arg); // ERROR HERE

return s;
}

但是我无法访问 MyType 的成员...怎么会呢?我可以添加一些东西来启用它们吗?

谢谢

大声

最佳答案

您可以这样做(请注意,我已经移动了您的一些通用参数和约束)。

public class MyType
{
public void doStuff(int i){}
}
public abstract class ABase<T>where T : class, new()
{
public abstract T method(int arg);
}

public class AChild : ABase<MyType>
{
override public MyType method(int arg)
{
MyType e = new MyType();

e.doStuff(arg); // no more error here

return e;
}
}

关于C# 泛型和类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4225284/

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