您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Solidity interface怎么使用”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Solidity interface怎么使用”吧!
以太坊網(wǎng)絡(luò)把在網(wǎng)絡(luò)上讀與寫數(shù)據(jù)進(jìn)行了區(qū)分,寫數(shù)據(jù)被稱作交易(transaction),讀數(shù)據(jù)被稱作調(diào)用(call)。
第一個(gè)合約:Doug.sol代碼如下:
pragma solidity ^0.4.19; contract Doug{ mapping (bytes32 => uint) public contracts; function Doug() { contracts['hww'] = 1; contracts['brian'] = 2; contracts['zzy'] = 7; } function getDougName(string _name) public view returns(string) { return _name; } function getDougAge(uint _age) public pure returns(uint) { return 3 ** _age; } }
第二個(gè)合約 myContract.sol 代碼如下:
pragma solidity ^0.4.19; contract DogInterface { function getDougAge(uint _age) returns (uint); function contracts(bytes32 name) returns (uint); } contract main{ event FetchContract(address dogInterfaceAddress, address sender, bytes32 name); address DOUG; address dogInterfaceAddress = 0x3e6494333ae0e929ade0eb9a19fb02632b8e07cf; DogInterface dogContract = DogInterface(dogInterfaceAddress); function setDOUG(address _doug) { DOUG = _doug; } function dougOfage(uint _age) public view returns(uint) { uint num = dogContract.getDougAge(_age); return _age+num; // return num; } function uintOfName(bytes32 _name) returns (uint) { dogContract.contracts(_name); FetchContract(dogInterfaceAddress, msg.sender, _name); } // function getTest(string _name) public view returns(string) { // string memory newName = _name ; // DogInterface(DOUG).getDougName(newName); // return newName; // } }
執(zhí)行結(jié)果:
到此,相信大家對(duì)“Solidity interface怎么使用”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。