在 C# 中傳遞方法作為參數
當處理多個具有相似參數和返回類型但實現不同的方法時,需要根據方法名稱動態調用這些方法。在 C# 中,利用委託是一種有效的解決方案。
在提供的示例中,目標是創建一個方法 RunTheMethod
,它將另一個方法的名稱作為參數並調用該方法。由於 RunTheMethod
的參數需要特定的方法簽名,因此會出現複雜性。
.NET Framework 提供了一個名為 Func
的委託,允許我們指定具有類型安全性的方法簽名。通過使用 Func
,我們可以將 RunTheMethod
的參數定義為接受一個帶字符串參數並返回整數的方法。
以下是修改後的實現:
<code class="language-csharp">public bool RunTheMethod(Func<string, int> myMethodName) { int i = myMethodName("My String"); return true; }</code>
通過此修改,我們現在可以將不同的方法作為參數傳遞給 RunTheMethod
:
<code class="language-csharp">bool result1 = RunTheMethod(Method1); bool result2 = RunTheMethod(Method2);</code>
這種方法提供了靈活性,並通過允許根據方法名稱動態調用方法來簡化代碼組織。
以上是如何使用委託中的C#中的參數傳遞方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!