AV

智能合约:不要重新发明轮子

SafeMath 在大多数现代编程语言中,都考虑了算术运算的安全性,因此很少考虑它们的实现。然而,在 Solidity 中,上溢和下溢会带来安全风险。SafeMath 是一个库,如果超出整数数据类型的界限,它会通过恢复事务来确保安全算术运算。SafeMath 示例。using 语句向编译器指示合约使用 SafeMath 中定义的函数进行 uint 运算。不要使用算术运算符(+、-、*、/、%),而使用函数 add()、sub()、mul()、div() 和 mod()。来源:

以太坊DApps:如何收听事件

使用我们在步骤 2 中创建的实例,我们可以订阅以侦听它发出的任何事件。图 4:订阅“MyEvent”如前所述,我们要侦听的事件称为 MyEvent,图 4 向我们展示了如何。我们的 myContract 实例有一个名为 events 的访问器,我们可以从中定位 MyEvent。这是一个返回 Promise 的异步函数,每次发出 MyEvent 时都会调用它。第 3 行定义了从 Promise 返回数据后会发生什么。这里我们只是简单地记录