我的函數需要你傳遞一個字符串和一個類型爲T.基於T我想解析字符串val作爲該類型,但我得到錯誤的標題這個問題。任何人有任何洞察力或其他方式來完成這個功能,我將不勝感激。約束不能是特殊類'System.Object'
T Parse<T>(string val) where T : System.Object
{
TypeCode code = Type.GetTypeCode(typeof(T));
switch (code)
{
case TypeCode.Boolean:
return System.Boolean.Parse(val);
break;
case TypeCode.Int32:
return Int32.Parse(val);
break;
case TypeCode.Double:
return Double.Parse(val);
break;
case TypeCode.String:
return (string)val;
break;
}
return null;
}
你是什麼那裏做濫用泛型。如果你要檢查一個類型,爲什麼要使用泛型? – Oded 2012-07-13 17:05:51
[C#泛型:約束T其中T:Object不編譯;錯誤:約束不能是特殊類'對象'](http://stackoverflow.com/questions/10644703/c-sharp-generics-constraining-t-where-t-object-doesnt-compile-error-constr) – nawfal 2013-04-19 07:04:03