其具体位置如下
@openzeppelin/contracts/utils/math/SafeMath.sol
需要特别注意的是,@openzeppelin
不同版本下,内部实现差距非常大,版本之间完全不兼容,所以,需要对照源码进行查看。
并且,SafeMath
的使用,也要正确使用。
比如下面的案例是没有正确使用的。
因为不同版本的 SafeMath.sol
差距非常大,比如有一个版本是
1 | function add(uint256 a,uint256 b) internal returns(uint256){ |
可以看到其中 assert
是注释的,所以,如果用 add
的话,没有一点用处。
更多的案例参考上面的链接。