有沒有辦法限制T的打字,以便能夠將默認值添加到函數參數中?使用通用函數參數的默認值
public class Identity<T>
{
public readonly T Seed;
public readonly T Increment;
public Identity(T seed = 1, T increment = 1)
{
Seed = seed;
Increment = increment;
}
}
這是我希望能夠做的,也許限制噸至非十進制數字類型,比如short,int和長T seed = 1
...
感覺這樣可能會受益於一些額外的抽象,看到類似的排序問題/答案:http://stackoverflow.com/questions/3140666/where-t-multiple - 類 我的確認爲,也許你可以用另一種方式來工作,雖然沒有看到你如何使用它,但很難確切地說出可能的形狀。也許從實現一個IKeyField開始? –
這不是重複的! OP希望能夠在泛型類的參數定義中使用**默認值**!雖然實際上,有針對性的問題部分地回答「不能完成」,因爲你不能將T限制爲數字,但它不是「足夠重複」的。 – quetzalcoatl
@quetzalcoatl這個問題還提到,「我希望能夠做到,也許將T限制爲像short,int,long這樣的非十進制數字類型」,爲了讓給定的默認參數是合理的,需要完成這些操作。 – Servy