Solidity 中的表达式 "variableName;" 是什么意思?
What does mean expression "variableName;" in Solidity?
我在文档中找不到有关此表达式的任何信息。 Ehternaut Re-entrancy task .
上有如下代码
function withdraw(uint _amount) public {
if(balances[msg.sender] >= _amount) {
(bool result,) = msg.sender.call{value:_amount}("");
if(result) {
_amount;
}
balances[msg.sender] -= _amount;
}
}
_amount;
是什么意思?
if(result) {
_amount;
}
这段代码实际上什么也没做。您可以放心地忽略它,因为它与重入漏洞无关。
如果没有上述代码段,编译器会发出有关未使用 result
变量的警告。如果他们没有声明 result
变量,则会出现另一个关于不检查低级调用结果的警告。如果他们只是将条件块留空 - 是的,另一个关于空块的警告。
所以我最好的猜测是作者只是想清除警告,并选择了这种方式来做到这一点。
我在文档中找不到有关此表达式的任何信息。 Ehternaut Re-entrancy task .
上有如下代码function withdraw(uint _amount) public {
if(balances[msg.sender] >= _amount) {
(bool result,) = msg.sender.call{value:_amount}("");
if(result) {
_amount;
}
balances[msg.sender] -= _amount;
}
}
_amount;
是什么意思?
if(result) {
_amount;
}
这段代码实际上什么也没做。您可以放心地忽略它,因为它与重入漏洞无关。
如果没有上述代码段,编译器会发出有关未使用 result
变量的警告。如果他们没有声明 result
变量,则会出现另一个关于不检查低级调用结果的警告。如果他们只是将条件块留空 - 是的,另一个关于空块的警告。
所以我最好的猜测是作者只是想清除警告,并选择了这种方式来做到这一点。