我有一個接受T類型的泛型方法,我需要能夠調用一個需要單個XmlNode的構造函數。目前,我正在嘗試通過擁有一個抽象基類來實現我想要的構造函數(加上一個無參數的基類,所以我不必編輯除了添加實際子類化之外的「子類」)並通過它進行約束。如果我嘗試將這些類別實例之一,它抱怨:通用方法:使用參數實例化一個泛型類型
Cannot create an instance of the variable type 'T' because it does not have the new() constraint
,如果我加入new()
約束,我得到:
'T': cannot provide arguments when creating an instance of a variable type
我該怎麼做我想要什麼?
我不能使用反射,我想避免使用Initialize函數,如果可能的話。不過這是一個選項。 – RCIX 2010-07-25 01:25:30
用更多選項編輯答案......你甚至回答了上述第二個鏈接的問題:http://stackoverflow.com/questions/1682310/c-generics-problem-newing-up-the-generic-type-with-參數在構建/ 1691584#1691584 – 2010-07-25 01:29:31
我可能會去與該鏈接SO問題的建議之一,謝謝! – RCIX 2010-07-25 03:20:42