関数の引数
CoddyのSolidityジャーニー「基礎」セクションの一部。レッスン 21/53。
関数は、再利用可能な操作を名前の下にまとめます。そのパラメーターは、型が宣言された名前付きの入力です。呼び出し元は、同じ順序で引数を渡します。この例では、小さな内部ヘルパーが渡された2つの値を加算し、mainがその結果を出力します。
このヘルパーをコントラクト内で定義します。
function combine(uint256 left, uint256 right) internal pure returns (uint256) {
return left + right;
}提供されている main 関数内で使用します。
console.log(combine(7, 9));combineを呼び出すと、7がleftに、9がrightにコピーされます。returns (uint256)は結果の型を示し、returnは計算された値を返します。内部ヘルパーはこのコントラクトから呼び出すことができます。外部エントリポイントではありません。
引数の順序によって、各関数パラメーターが受け取る値が決まります。
チャレンジ
簡単differenceという名前のinternal pure関数を作成し、2つのuint256値を受け取り、1つ目から2つ目を引いた結果を返してください。mainでは、difference(high, low)を出力してください。highはlow以上です。
テストでは、次の順序で引数をmainに渡します:uint256 high、uint256 low。各テストは新しいコントラクト状態から開始します。
指定された出力にはconsole.logを使用してください。指定された値のみを、1行に1つずつ出力し、タスクで指定されていない限り、余分なラベルは付けないでください。
自分で試してみよう
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 high, uint256 low) external view {
// ここに解答を書いてください。
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Solidityプレイグラウンド