Evm

EVM 如何解決方法 ID 衝突?

  • April 19, 2018

如果我製作了一個 EVM 二進製文件,讓 ABI 看到兩個匹配的方法 ID,並嘗試部署合約,會發生什麼?這是一個有效的交易嗎?

函式選擇器是一個 Solidity 概念。它發出的程式碼基本上是執行一個 switch 語句並跳轉到正確的函式。

如果函式選擇器發生衝突,Solidity 編譯器會引發錯誤。如果您跳過 Solidity 編譯器並編寫自己的使用函式選擇器的字節碼,您只需要自己決定做什麼。(你可以讓程式碼做任何你想做的事情。)

系統的其餘部分不關心函式選擇器或您的合約在這些情況下的行為方式。

引用自:https://ethereum.stackexchange.com/questions/46182