小编get*_*eth的帖子

通用约束:强制类型具有静态函数和带参数的构造函数

我知道你可以写:

class GenericClass<T> where T : new()
{ 

}
Run Code Online (Sandbox Code Playgroud)

强制执行T具有空构造函数.

我的Qs是:

  1. 你能强制执行T具有特定类型参数的构造函数吗?喜欢:

    class SingletonFactoryWithEmptyConstructor<T> where T : new(int)
    
    Run Code Online (Sandbox Code Playgroud)
  2. 你能强制执行T有静态函数(比方说void F()),这样你就可以在泛型类中使用这个函数吗?喜欢 :

    class GenericClass<T> where T : void F()
    { 
       void G ()
       {
           T.F();
       }
    }
    
    Run Code Online (Sandbox Code Playgroud)

    我知道你可以指定T实现一个接口,但我不希望这样.我想指定它T有一个静态函数.

.net c# generics generic-constraints

4
推荐指数
1
解决办法
1086
查看次数

标签 统计

.net ×1

c# ×1

generic-constraints ×1

generics ×1