第92篇 合约间调用

Posted wonderBlock

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第92篇 合约间调用相关的知识,希望对你有一定的参考价值。

本文环境:以太坊POA联盟链 + MetaMask + Remix

1.方法

本文介绍“接口直接调用法”,实现合约对合约的调用;

这种方式调用,是最简单方便的调用方式,缺点是只能调用固定的接口,不够灵活。

以下是调用一个已经部署的合约的 deposit 方法。

pragma solidity ^0.5.10;
 
interface ContractInterface 
    function deposit(string calldata _name) external payable returns(bool);

 
contract InterfaceCall 
    function callDeposit(address _contract, string memory _args) 
        public 
        returns(bool)
    
        ContractInterface ci = ContractInterface(_contract);
        bool retValue = ci.deposit(_args);
        return retValue;
    

2.示例

2.1 contractA.sol

pragma solidity^0.5.0;
 
contract contractA 
    uint randNonce = 0; 
	uint randomN;
	address owner;
    mapping(address => bool) public minters;
    
	// 修饰器,管理员权限
    modifier onlyMinter() 
        require(minters[msg.

以上是关于第92篇 合约间调用的主要内容,如果未能解决你的问题,请参考以下文章

第126篇 合约间调用方法

第126篇 合约间调用方法

第94篇 合约间调用

第97篇 笔记-solidity中的抽象(Abstract)

第97篇 笔记-solidity中的抽象(Abstract)

第158篇 合约安全-selfdestruct