簡體   English   中英

C#泛型中帶有類型參數的類型參數

[英]Type parameter with type argument in C# Generics

我想在 C# 中的泛型中使用帶有類型參數的類型參數,如下所示:

public class ClassB {}
public class ClassA<T>: IList<T<ClassB>> {}

有可能做這樣的事情嗎?

在嘗試了很多事情之后,似乎你還不能,甚至使用where子句:編譯器拒絕所有T<ClassB>IList<T1<T2>>

https://docs.microsoft.com/en-us/dotnet/csharp/misc/cs0307

例子:

public class ClassA<T1, T2> : IList<T1<T2>> // implementation request refused
  where T2 : ClassB
{
}

public class ClassA<T, T1, T2> : IList<T>
  where T : T1<T2> // constraint refused
  where T2 : ClassB
{
}

不能將 T1 類型的參數與類型的參數一起使用

能夠做這樣的事情可能會很有趣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM