問題:
作為Go 的初學者,您正在建立計算器目前支持加法和減法。您設想未來的功能,例如乘法和除法。但是,您發現addition.go 和subtraction.go 檔案中的當前方法過於冗長,因此需要尋求更動態的解決方案。有沒有辦法找到計算器包中的所有方法並動態迭代它們?
答案:
不幸的是,Go 沒有提供內建機制來內省包的內容並動態地迭代它們的方法。編譯器僅包含可執行檔中明確引用的函數和變數。在 Go 中,迭代可能不完整的符號集被認為沒有用。
替代解決方案:
作為動態迭代的替代方案,您可以使用陣列來保存您想要操作並迭代該陣列的類型的物件。此方法涉及建立介面切片:
然後,您可以將特定類型的物件附加到切片:
然後您可以迭代該切片並呼叫動態方法:
這種方法提供了一種靈活的方法來迭代套件中的計算器操作,而不需要動態內省。
以上是如何動態迭代 Go 套件中的方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!