W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
<address>.balance
( uint256
)魏地址余額
<address>.code
( )bytes memory
地址處的代碼(可以為空)
<address>.codehash
( bytes32
)地址的代碼哈希
<address payable>.transfer(uint256 amount)
將給定數(shù)量的 Wei 發(fā)送到Address,失敗時(shí)恢復(fù),轉(zhuǎn)發(fā) 2300 gas 津貼,不可調(diào)整
<address payable>.send(uint256 amount) returns (bool)
發(fā)送給定數(shù)量的 Wei 到地址false
,失敗返回,轉(zhuǎn)發(fā) 2300 gas 津貼,不可調(diào)整
<address>.call(bytes memory) returns (bool, bytes memory)
使用給定的有效載荷發(fā)出低級(jí)CALL
,返回成功條件和返回?cái)?shù)據(jù),轉(zhuǎn)發(fā)所有可用的氣體,可調(diào)
<address>.delegatecall(bytes memory) returns (bool, bytes memory)
使用給定的有效載荷發(fā)出低級(jí)DELEGATECALL
,返回成功條件和返回?cái)?shù)據(jù),轉(zhuǎn)發(fā)所有可用的氣體,可調(diào)
<address>.staticcall(bytes memory) returns (bool, bytes memory)
使用給定的有效載荷發(fā)出低級(jí)STATICCALL
,返回成功條件和返回?cái)?shù)據(jù),轉(zhuǎn)發(fā)所有可用的氣體,可調(diào)
有關(guān)詳細(xì)信息,請(qǐng)參閱地址部分。
警告
在執(zhí)行另一個(gè)合約函數(shù)時(shí)應(yīng)盡可能避免使用.call(),因?yàn)樗鼤?huì)繞過(guò)類型檢查、函數(shù)存在檢查和參數(shù)打包。
警告
使用 有一些危險(xiǎn)send:如果調(diào)用堆棧深度為 1024,則傳輸失?。ㄟ@總是由調(diào)用者強(qiáng)制執(zhí)行的),如果接收者用完 gas,它也會(huì)失敗。因此,為了進(jìn)行安全的 Ether 轉(zhuǎn)賬,請(qǐng)始終檢查 的返回值send,使用transfer甚至更好:使用收款人取款的模式。
警告
由于 EVM 認(rèn)為對(duì)不存在的合約的調(diào)用總是成功的,Solidity 包括extcodesize在執(zhí)行外部調(diào)用時(shí)使用操作碼的額外檢查。這確保了即將被調(diào)用的合約要么實(shí)際存在(它包含代碼),要么引發(fā)異常。
.call()對(duì)地址而不是合約實(shí)例(即、 .delegatecall()、.staticcall()和).send()進(jìn)行操作的低級(jí)調(diào)用不包括此檢查,這使得它們?cè)?gas 方面更便宜,但也不太安全。.transfer()
筆記
在 0.5.0 版本之前,Solidity 允許合約實(shí)例訪問(wèn)地址成員,例如this.balance. 現(xiàn)在這是禁止的,必須明確轉(zhuǎn)換為地址:address(this).balance.
筆記
如果通過(guò)低級(jí)委托調(diào)用訪問(wèn)狀態(tài)變量,則兩個(gè)合約的存儲(chǔ)布局必須對(duì)齊,以便被調(diào)用合約能夠按名稱正確訪問(wèn)調(diào)用合約的存儲(chǔ)變量。如果存儲(chǔ)指針作為函數(shù)參數(shù)傳遞,就像高級(jí)庫(kù)的情況一樣,情況當(dāng)然不是這樣。
筆記
在 0.5.0 版本之前,,.call只返回成功條件,不返回?cái)?shù)據(jù)。.delegatecall.staticcall
筆記
在 0.5.0 版本之前,有一個(gè)成員調(diào)用callcode,其語(yǔ)義與delegatecall.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: