問題一覧に戻る
初級関数
問題9: view関数

Solidityのview関数について学びます。view関数はコントラクトの状態を変更しないことを約束します - 状態変数の読み取りと値の返却のみ可能です。外部から呼び出された場合、view関数はガスを消費しません(無料読み取り)。ゲッター関数やデータクエリに最適です。view関数は状態変数の変更、イベントの発行、非view関数の呼び出しはできません。

pragma solidity ^0.8.0;

contract ViewFunction {
uint256 public balance = 100;
string public name = "MyToken";

// 残高を取得(読み取り専用)
function getBalance() public returns (uint256) {
return balance;
}

// 複数の値を読み取る
function getInfo() public returns (string memory, uint256) {
return (name, balance);
}
}