非エンジニアが学ぶSolidity(CryptoZombies編_2-11)

■Lesson2:ゾンビが人間を襲う
チャプター 11: Interfaceを使用する

たとえば、CryptoKittiesに「Neko」というコントラクト、「Nyah」という関数があったとして
そのなかの関数を使いたいときは下記のように書く?

// 1.Interfaceを作成する
contract NekoInterface {
    function Nyah() public pure returns(string memory);
}

// 2.Interfaceに生命(コントラクトのアドレス)を吹き込む
contract MyContract {
    address コントラクトアドレス = 0xnekonekonekoeko...;
    
    NekoInterface インターフェース名 = NekoInterface(コントラクトアドレス);
    
// 3.Interfaceのなかの関数を実際に使う
    function Nyah2() public pure returns(string memory){
        インターフェース名.Nyah();
    }
}

この記事が気に入ったらサポートをしてみませんか?