本文介绍三种类型的合约间调用;
1.一般调用
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.3;
contract Receiver {
event Received(address caller, uint256 amount, string message);
receive() external payable {}
fallback() external payable {
emit Received(msg.sender, msg.value, "Fallback was called");
}
function foo(string memory _message, uint256 _x)
public
payable
returns (uint256)
{
emit Received(msg.sender, msg.value, _message);
return _x + 1;
}
}
contract Caller {
event Response(bool success, bytes data);
// Let's imagine that contract B does not have the source code for
// contract A, but we do know the address of A and the function to call.
function testCallFoo(address payab
本文详细阐述了以太坊智能合约中的三种合约间调用方式:一般调用、调用其他合约以及调用超级合约。所有示例合约已通过编译,可供学习参考。
订阅专栏 解锁全文
1416

被折叠的 条评论
为什么被折叠?



