我刚刚写了一个简单的代码来测试 openzeplin Safemath 库。我正在使用最新版本的 remix ide 并为 ^0.5.0 编译。Remix 使用的是 0.5.0_commit.1d4f565a 编译器环境是 JavaScript VM EVM 版本是编译器默认
add 函数似乎在下面给出的代码中不起作用
我已经尝试过 x.sub(1) 它按预期抛出异常,我也尝试过将 x 初始化为不同的值,但仍然无法正常工作。
pragma solidity ^0.5.0;
import "./SafeMath.sol";
contract SimpleStorage {
using SafeMath for uint;
uint x;
event incremented(uint x);
constructor() public{
x=0;
}
function increment() public {
x.add(1);
emit incremented(x);
}
function get() external view returns (uint) {
return x;
}
}
每次调用函数时,预期输出都会增加 1,但每次都获得相同的值。Emit 也显示相同的值。