Go 中的映射函數
在 Go 中,映射提供了一種將鍵與其各自的值關聯起來的強大方法。要映射函數,鍵通常是表示函數名稱或識別符的字串,而值是函數引用。
範例:
考慮以下內容Go程序:
在這個例子中,使用了一個map m來儲存鍵「a」和函數參考之間的映射a.該循環遍歷映射並執行與「a」鍵關聯的函數,並傳入字串「hello」作為參數。
處理各種函數簽章:
但是,在最初的嘗試中,您在嘗試在映射中儲存具有不同簽章的函數時遇到了問題。這是因為映射中的值類型被宣告為 func()。為了處理具有不同簽名的函數,我們可以使用介面作為值類型,例如下面修改後的範例中使用的interface{}:
透過使用interface{}類型,我們允許映射來存儲任何類型的值,包括具有不同簽名的函數。然後,我們在循環中使用顯式類型轉換來執行具有各自參數的函數。
以上是如何在 Go 中映射具有不同簽名的函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!