从github.com上的openZeppelin合同中导入哪个版本的safeMath



openZeppelin上有多个版本的safeMath。在master分支上,URL为:

https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/math/SafeMath.sol

除了master分支,还有相当多的其他版本可用。这里是3.0.0版本:

https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v3.0.0/contracts/math/SafeMath.sol

如果有人想在智能触点开发中使用safeMath,应该导入哪个版本?是否应随时导入master分支?

master分公司:

pragma "^0.7.0"
import "github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/math/SafeMath.sol"
contract myContract() {
//do something
}

这取决于您在主合同中使用的solidity版本。对于使用版本>0.8.0安全数学的使用阅读本文。对于用旧版本(比如0.6.0(编写的合约,使用为0.8.0版本编写的最新safeMath库将不兼容。最后,请尝试使用与主合同版本相同的safeMath版本。

最新更新