//作者第一次發,慌。
問題:
練習寫眾籌合約的時候,遇到transfer報錯
TypeError: Member "transfer" not found or not visible after argument-dependent lookup in address.
問題探究:
0.5.0版本中使用transfer方法時,使用transfer的賬戶地址必須宣告payable
注意:不是函式宣告payable,而是address
解決方法:
情況1
如果address是部署后再傳入,即function內不能自動獲取address,此時需要:
function name(address payable youraddress)public payable{}
情況2
如果address來源于struct然后被儲存到區塊鏈上,
此時需要:
struct structname{
address payable youraddress;
}
進過map以及一堆操作后address變為whoaddress
address呼叫:
address payable account=whoaddress;
account.transfer(x wei)
//此時函式不需要payable
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/30115.html
標籤:區塊鏈技術
上一篇:MySQL事務管理及存盤引擎
下一篇:1、我的挖礦IP埠是8888,是不是要把這個埠映射到外網同樣的埠? 2、 很多節點埠都不一致且變化的,我這邊怎么設定才會更快接入到變動節點的地址和埠?
