0

我有一个关于 Solidity 低级别事件的问题,我无法真正理解。

所以理论上一个看起来像这样的事件:

event MyEvent(address indexed oneAddress, bool isTrueOrNot, uint256 myUnsingedNumber);

在函数内部,我会像这样使用它,例如:

MyEvent(msg.sender, true, 5);

但是现在使用 log2(log_i = i+1 参数 = 3)来处理低级事件。那将如何在那里使用?我已经尝试了一点,但无法提出正确的解决方案......

log2(??, sha3("MyEvent(address,bool,uint256)"), msg.sender, ??)

在 Docs 的示例中,它非常简单,但我在将其放入此示例时遇到了真正的麻烦。

这是文档的链接:http: //solidity.readthedocs.io/en/develop/contracts.html#events

尤其是加上索引,以及 uint256 到 byte32 的转换,因为所有参数都必须在 byte32 中。希望我没有忽略什么...

谢谢!

4

1 回答 1

0

我认为用法是 log1(value, 'log_topic'); 然后是 log2(value, 'log-topic1', 'log-topic2')

因此,如果 msg.sender 是分析的值,则在两种情况下都将其放在首位。

于 2017-05-01T06:38:13.597 回答