スマートコントラクトは主に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;
}
}
コメント