Solidityの基礎:関数の修飾子(viewとpure)
関数の修飾子(viewとpure)とは
Solidityの関数は、view関数やpure関数といった修飾子で定義することもできます。
- view
view関数は、ブロックチェーン上の値を参照するだけの関数で、それらの値を書き換えるなどの更新行為はできません。 - pure
pure関数は、ブロックチェーン上の値を書き換えないだけでなく、関数の内容を読み込むこともしません。受け取ったパラメーターをもとに関数を実行することだけ行います。
view関数やpure関数は、他のコントラクトから呼び出された場合を除いて、ガスを消費しません。
関数を修飾する
Solidityで関数を修飾する際には、以下のように「function 関数名 public/private view/pure returns (型) { }」を記述します。
簡単な足し算をするview関数を定義する場合
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
pragma solidity ^0.4.19; contract SampleContract { uint sampleNumber = 3; //関数を宣言:受け取ったxをsumpleNumberに加算するview関数を定義 function add(uint _x) private view returns (uint) { return sampleNumber + _x; } //関数を宣言:受け取ったxをsumpleNumberに加算するpure関数を定義 function add(uint _sumpleNumber, uint _x) private pure returns (uint) { return _sampleNumber + _x; } } |
Solidityの初心者向けガイドに戻る
基礎編:状態変数 / 構造体 / 関数の基礎を理解する
- DApps開発入門:Solidityの基礎:スマートコントラクトを定義する
- DApps開発入門:Solidityの基礎:状態変数を定義する
- DApps開発入門:Solidityの基礎:数式を演算する
- DApps開発入門:Solidityの基礎:構造体を定義する(struct)
- DApps開発入門:Solidityの基礎:配列を定義する
- DApps開発入門:Solidityの基礎:関数を宣言する(function)
- DApps開発入門:Solidityの基礎:関数の修飾子(viewとpure)
コメントを残す