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版本。