透過值傳遞「this」會降低 Go 方法的效能嗎?
與 C 不同,在 C 中,值傳遞函數參數會導致顯著的效能因變數複製帶來的懲罰,Go 的方法接收器遵循不同的範例。
在 Go 中,方法接收器是僅僅是語法上的便利。如下所示:
請注意,ChangeValue 中的接收者 s 是一個指針,使其類似於 C 中的引用。如果接收者是值類型,則不允許值突變。
因此,Go 的指標接收器方法可確保封裝並防止複製整個「this」實例,這與 C/C 中觀察到的效能損失不同用於按值傳遞參數。
以上是透過值傳遞「this」會影響 Go 方法的效能嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!