我有这样的代码:
contract A {
using SafeMath for uint;
...
}
contract B is A {
...
}我的合同B继承了“uint使用SafeMath”吗?
发布于 2021-10-12 07:22:09
不,您必须明确地声明每个合同的库使用情况。
在SafeMath的情况下,如果使用Solity0.8.0及以后,就不必使用它。该版本中包括溢出/下溢检查。请参见https://docs.soliditylang.org/en/v0.8.9/080-breaking-changes.html:
算术运算恢复到下溢和溢出。可以使用未选中的{.}来使用前面的包装行为。检查溢出是非常常见的,因此我们将它们作为默认的,以提高代码的可读性,即使它是在稍微增加气体成本的情况下进行的。
https://ethereum.stackexchange.com/questions/111418
复制相似问题