Solidity

ERC-721 safeTransferFrom 過載?

  • April 17, 2018

根據 ERC-721 介面,函式 safeTransferFrom 似乎被重載:

function safeTransferFrom(address _from, address _to, uint256 _tokenId) public;
function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes _data) public;

為什麼這樣?有任何想法嗎?謝謝!

沒有的一方_data在呼叫另一方合約時不發送任何數據。(它發送一個長度為零的字節序列。)

有的那個_data

ERC-721 標準草案中,注意提供的介面中的程式碼註釋。

具體來說,對於safeTransferFrom沒有第四個參數的函式:

/// @dev This works identically to the other function with an extra data parameter,
///  except this function just sets data to ""

所以你的三參數函式應該和四參數函式完全一樣,但是""作為數據傳遞​​。

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