Huff
Huff 安装
Windows系统下,能够成功按照 rust 和 Foundry 的话,直接通过 cargo 命令一次就能成功的安装 Huff。如果没有成功安装 Rust 和 Foundry,大致解决方法:
首先,Solidity 支持多重继承,包括多态性
多态性意味着函数调用总是执行继承层次结构中最新继承合约的合约中的同名函数(和参数类型),但是,必须使用virtual
和override
关键字在层次结构中的每个函数上明确启用
可以通过ContractName.functionName()
明确指定合约,可以在内部调用继承层次结构中更高的函数。或者直接调用继承层次中调用高一级的函数,可以使用super.functionName()
。
一个合约继承自其他合约,在区块链上只会创建一个单一的合约。所有基础合约的代码被编译到创建的合约中。这意味着,对基础合约的所有内部函数的调用都只是使用内部函数调用。
Solidity 的继承系统和 Python 的继承系统非常类似。
通用升级合约(UUPS)相比透明代理合约,UUPS 代理合约最终可以移出其升级能力,使代码真正不可变,而且 UUPS 在技术上部署成本稍低一些。
OpenZeppelin 的文档中详细介绍了这两种代理的区别: https://docs.openzeppelin.com/contracts/5.x/api/proxy#transparent-vs-uups