gpt4 book ai didi

c# 泛型变量声明,这可能吗?

转载 作者:太空狗 更新时间:2023-10-30 01:20:48 24 4
gpt4 key购买 nike

我有以下问题:

public class MyClass<T> where T : class
{
private MyOtherClass<T, U> variable where U : class;
... content ...
}
public class MyOtherClass<T, U> where T : class where U : class
{
... content ...
}

这有可能吗?

最佳答案

如果要将字段或属性的类型设为MyClass基于某些类型参数的泛型 U ,您必须将其声明为 MyClass 的类型参数:

public class MyClass<T, U> 
where T : class
where U : class
{
private MyOtherClass<T, U> variable;
... content ...
}
public class MyOtherClass<T, U>
where T : class
where U : class
{
... content ...
}

但是,这不适用于方法。这很好:

public class MyClass<T> 
where T : class
{
private MyOtherClass<T, U> Method<U>() where U : class
{
... content ...
}
}

关于c# 泛型变量声明,这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17758014/

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