文書の過去の版を表示しています。
スマートコントラクトは主にsolidityという言語を使用して開発します
本ページにあるコードは、すべてsolidityです
solidityはブラウザでコンパイルすることが可能です
コントラクト作成編
コントラクト実行編に進んで、もし「Address does not exist (code -5)」と出る場合はもう少し待ちましょう
コントラクトの実行方法には「Call」と「SendTo」の2種類あります。
Call
SendTo
「SetMessage」を使用した場合、「GetMessage」関数を“Call”してみましょう。 ブロックの生成が完了していれば、先ほど設定したメッセージが取得できます。
pragma solidity ^0.4.16; // solidityのバージョン contract sample { // コントラクト名「sample」 string private mssg; // コントラクトに情報を記憶させるための変数 // 関数 : HelloWorld // 説明 : 文字列"HelloWorld"を返却します。 // 呼び出し方 : Call // 引数 : なし // 戻り値 : HelloWorld!! function HelloWorld() pure public returns (string message) { return "HelloWorld"; } // 関数 : SetMessage // 説明 : コントラクトに引数で渡した文字列を記憶します。 // 呼び出し方 : SendTo // 引数 : message : 記憶する文字列 // 戻り値 : なし function SetMessage(string message) public { mssg = message; } // 関数 : GetMessage // 説明 : 関数「SetMessage」で記憶させた文字列を返却します。 // 呼び出し方 : Call // 引数 : なし // 戻り値 : 関数「SetMessage」で記憶させた文字列 function GetMessage() public constant returns (string message) { return mssg; } // 関数 : Sum // 説明 : 引数の合計を返却します。 // 呼び出し方 : Call // 引数 : data1 : 足し算する数1 // : data2 : 足し算する数2 // 戻り値 : data1 + data2 の結果 function Sum(uint128 data1, uint128 data2) public pure returns (uint256 result) { return data1 + data2; } }