將通用方法限制為.net
中的特定數字類型本文解決了將通用方法類型限制為.net中特定數字類型的挑戰,例如Int16
>,Int32
,Int64
,UInt16
,UInt32
,UInt64
和
現代.net(7及以後):
.net 7介紹了INumber<T>
接口,包括所有數字類型。 對於整數類型,請使用IBinaryInteger<T>
。這提供了一個簡潔的解決方案:
<code class="language-csharp">static bool IsPositiveInteger<T>(T value) where T : IBinaryInteger<T> { return value > T.Zero; }</code>
.NET 7之前的
1。工廠模式:
>使用工廠創建自定義計算器類的實例。 該計算器將處理特定的數字類型操作,為不同類型提供靈活性。
2。基於策略的方法:>定義實現通用接口的策略類。通用方法接受策略實例作為參數,從而實現了各種數字類型的實例化。 這種方法促進了問題的清潔分離。 > 此修訂的解釋可維護原始信息,同時提高清晰度和流程。
以上是如何將通用方法限制為.NET中的特定數字類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!