Solidity 练习:接口

2022-12-29 Web3 Solidity

# 一、题目说明

接口能使合约无需代码即可调用其他合约。

# 二、任务列表

  • 完成 CallInterface 中的函数 dec(address _test)。
  • 该函数通过使用 ITestInterface 接口调用 TestInterface.dec。
  • 你要在 ITestInterface 接口中声明一个新的函数。

# 三、解答代码

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

// You know what functions you can call, so you define an interface to TestInterface.
interface ITestInterface {
    function count() external view returns (uint);

    function inc() external;

    function dec() external;
}

// Contract that uses TestInterface interface to call TestInterface contract
contract CallInterface {
    function examples(address _test) external {
        ITestInterface(_test).inc();
        uint count = ITestInterface(_test).count();
    }

    function dec(address _test) external {
        ITestInterface(_test).dec();
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# 四、参考资料

Last Updated: 2023-01-28 4:31:25