如何牢固地解决“此声明遮盖了现有的声明”错误?

时间:2019-05-23 16:23:25

标签: solidity

我正在编写一些代码来设计智能合约。但是,每次我说“警告:此声明会掩盖现有的声明”时,我都会不断遇到相同的错误。由于我是Solidity语言的新手,所以我尚未找到可能的解决方案:

State       Recv-Q Send-Q        Local Address:Port        Peer Address:Port
ESTAB       0      0             192.168.56.102:ssh        192.168.56.1:56328
     skmem:(r0,rb369280,t0,tb87040,f0,w0,o0,bl0,d0)

}

以下功能应该可以使用,但是我自己找不到解决方案:

r:sk_rmem_alloc
rb:sk_rcvbuf          - current receive buffer size
t:sk_wmem_alloc
tb:sk_sndbuf          - current transmit buffer size
f:sk_forward_alloc
w:sk_wmem_queued      - persistent transmit queue size
o:sk_omem_alloc
bl:sk_backlog
d:sk_drops

1 个答案:

答案 0 :(得分:0)

这不是错误。这是警告。

但这可能是您想要的东西:

function set(uint _diamondIDengravement) public {
    diamondIDengravement = _diamondIDengravement;
}

基本上,您已经有一个名为diamondIDengravement的状态变量,因此以相同的名称命名一个函数参数是一个坏主意。您可以为参数使用任何其他名称,但是按照惯例,如果您只是想避免名称冲突,可以在前面加上下划线是表明您正在执行的好方法。

但是您的代码意义不大,因此很难说出您想做什么。 (我不确定您打算set做什么,所以我猜了。)