再学:abi编码 地址类型与底层调用
目录
1.内置全局变量及函数
2.abi
3.地址类型
4.transfer
1.内置全局变量及函数
2.abi
data就是abi编码
abi描述:以json格式表明有什么方法
3.地址类型
4.transfer
x.transfer:合约转给x
call
和delegatecall
是 Solidity 中用于底层合约调用的函数,它们是智能合约之间交互的基础。call
和delegatecall
可以看作是合约方法(如transfer
)背后的底层逻辑。
call
和delegatecall
是更通用的底层调用函数,而transfer
是一个特定于 ERC20 代币合约的方法,用于发送代币。transfer
方法实际上是在 ERC20 合约中定义的,它内部可能使用call
或delegatecall
来实现代币的发送逻辑。在真实写代码的时候,都是用transfer
右边的代码:拿到abi编码,然后调用call方法
如果用c.count()这种方式的话,如果后续要再加新的方法,就无法自动识别了,所以用call()这种抽象的,识别abi的方式去调用
newCall()方法和call()方法作用是一样的