Solidity
分配新所有者
我正在編寫一個聯繫人,該聯繫人按以下方式設置新所有者,但無法理解為什麼 setNewOwner 函式需要成為視圖函式。我會認為分配一個新的所有者會改變狀態,所以不需要可見性功能?
mapping (address => uint) balanceAllowance; address public owner; constructor () { owner = msg.sender; } function setNewOwner (address _address) public view { owner == _address; }
因為您將比較運算符放在
==
那裡,所以您應該使用=
.更多解釋
由於您使用了
==
函式檢查是否owner
和_address
等於並且沒有進行任何更改,因此您的編輯器建議您將其更改為查看。如果你在return
下面放了一個function setNewOwner (address _address) public view { return owner == _address; }
它會返回 true。
我想補充一點,您應該注意到任何人都可以呼叫此函式並在您切換到後設置它的所有者
owner == _address
Toowner = _address
。考慮使用
msg.sender