合约之间的调用

  区块链中的项目,都是靠合约来运行,一个完整的项目,是很多合约组合起来的整体逻辑,那么问题来了,合约直接是怎么交互的呢?

也就是说,在一个合约中如何调用另外一个合约。

有两种方式实现合约内部调用:

1.接口方式:实现方式是定一个接口,合约去实现这个接口,调用的的时候将合约地址用接口类型强转,当一个接口化的地址来调用合约的函数。


 2.签名方式:使用call,delegatecall,staticall来调用,构造调用data数据有两种方式一种是encodeWithSignature,另外一种是encodeWithSelector


encodeWithSignature构造数据的方法参考compound


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容