solidity之合约内部创建和外部创建的区别!

如何外部创建调用并合约参考:https://blog.csdn.net/weixin_43343144/article/details/88951698

 

合约内部创建【在合约内部使用new关键词创建对象】

// 内部创建token合约对象,那么token合约实例的发送者就是Collection合约
contract Collection {
    // token是public,外部直接可以访问token合约地址
    KirinToken public token;

      constructor() public {
        token = new KirinToken();
    }
}

 

外部调用和内部调用的核心区别?

外部创建合约的发送者:就是给合约转账的地址;

内部创建合约的发送者:当前合约本身【内部创建token合约对象,那么token合约实例的发送者就是Collection合约】

solidity之合约内部创建和外部创建的区别!_第1张图片

solidity之合约内部创建和外部创建的区别!_第2张图片 

你可能感兴趣的:(以太坊solidity)