2016-12-06 57 views
0

嗨有没有任何解决方法创建一个同时具有结构和字符串作为通用约束的类?在类级别上的结构和字符串通用约束

public class AutoEncryptor<T> where T : struct, string { 
{ 
     private T? _value; 

     // codes removed for brevity 
} 

我的目标是我自己保存从创建具有相同的结构复制方法的麻烦,但不同的是,另一种接受字符串,另一个接受结构(值类型)。

+0

不,这是不可能的。 – Enigmativity

+0

即使你能做到'串?'类型也没有意义。 – Enigmativity

+0

是的,我希望如果有任何解决方法,让我重新说明我的问题。 :) – arvstracthoughts

回答

4

不,这是不可能的。最好的方法是使用抽象泛型基类,专门用于stringstruct

public abstract class AutoEncryptorBase<T> 
{ 
    protected T _value; 
} 

public class AutoEncryptor<T> : AutoEncryptorBase<T?> where T : struct 
{ 
} 

public class TextAutoEncryptor : AutoEncryptorBase<string> 
{ 
}