Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

引数(ヒキ スウ)とは | 意味や読み方など丁寧でわかりやすい用語解説

引数(ヒキ スウ)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

ひきすう (ヒキスウ)

英語表記

argument (アーギュメント)

用語解説

プログラミングにおいて「引数(ひきすう)」とは、関数やメソッド、サブルーチンなどと呼ばれる特定の処理のまとまりに対して、外部から具体的な値やデータを受け渡すための仕組みを指す。これは、処理の柔軟性や再利用性を高める上で非常に重要な概念であり、ほとんどすべてのプログラミング言語で利用される基本的な要素の一つである。

引数の概念を理解することは、システム開発におけるモジュール化や汎用的なコードの設計を考える上で不可欠となる。関数が特定のタスクを実行する際に、そのタスクの対象となるデータや、タスクの振る舞いを決定する設定値などを、関数を呼び出す側から「入力」として提供するために引数が用いられる。例えば、数値の計算を行う関数であれば計算の対象となる数値が、データベースから情報を取得する関数であれば検索条件となるキーワードが引数として渡される。これにより、同じ関数でも引数として異なる値を渡すことで、毎回異なる結果を得たり、異なる処理対象に対して操作を実行したりすることが可能となる。もし引数がなければ、関数は常に固定の値や事前に定義されたデータしか扱えず、特定の用途にしか使えない柔軟性の低いものになってしまう。

引数には、大きく分けて「仮引数(かりひきすう)」と「実引数(じつひきすう)」という二つの側面がある。仮引数とは、関数を定義する際に、その関数がどのような種類の値を受け取るのか、その値にどのような名前を付けて関数内で利用するのかを宣言する際に用いられる。これは、関数が受け取る「箱」の設計図のようなものだと考えると良い。例えば、「二つの数値を足し合わせる関数」を定義する場合、「第一の数値」と「第二の数値」という二つの仮引数を宣言することになる。一方、実引数とは、実際にその関数を呼び出す際に、仮引数で定義された箱の中に具体的な値を入れて渡すものである。先の例で言えば、関数を呼び出すときに「5」と「3」といった具体的な数値を実引数として渡すことで、関数内でこれらの値が使われ、結果として「8」が計算される。実引数として渡された値は、対応する仮引数の名前を使って関数内部で利用される。

引数を渡す方法にもいくつかの種類がある。最も一般的なのは「位置引数」と呼ばれるもので、これは仮引数の宣言順序と実引数を渡す順序が厳密に対応する方式である。例えば、三つの引数を持つ関数であれば、一つ目の実引数は一つ目の仮引数に、二つ目の実引数は二つ目の仮引数に対応する。しかし、引数の数が増えたり、それぞれの引数の意味が分かりにくくなったりする場合があるため、「キーワード引数」という方式も多くの言語で採用されている。キーワード引数では、実引数を渡す際に仮引数の名前を指定するため、引数の順序にとらわれずに値を渡すことができ、コードの可読性が向上するメリットがある。

また、特定の引数が頻繁に同じ値を取る場合や、省略されても問題ない場合に備えて、「デフォルト引数(省略可能な引数)」を設定できる言語も多い。これは、関数定義時に仮引数にあらかじめ初期値を設定しておくことで、関数を呼び出す際にその引数を指定しなかった場合に、自動的にその初期値が使われる仕組みである。これにより、関数の呼び出しがより簡潔になり、利用者の負担を減らすことができる。さらに、関数が受け取る引数の数が事前に決まっていない場合に備えて、「可変長引数」という仕組みを提供する言語もある。これは、呼び出し側から任意の数の実引数を渡すことができ、関数内部でそれらをまとめて処理できるようにするもので、例えば複数の項目をリストとして処理するような場合に便利である。

引数と密接な関係にあるのが「返り値(戻り値)」である。引数が関数への「入力」であるのに対し、返り値は関数からの「出力」である。関数は引数として値を受け取り、それらの値を用いて特定の処理を実行し、その結果として一つの値を返り値として呼び出し元に返す。この入力と出力のメカニズムによって、関数は特定の機能単位として独立し、他の部分と連携しながらシステム全体を構築していくことが可能になる。

引数の適切な利用は、保守性や拡張性に優れたコードを書く上で極めて重要である。引数を通じて関数が処理すべき情報を外部から受け取ることで、関数自体は汎用的なロジックに集中し、特定のデータに依存しない形で設計できる。これは、機能ごとにコードを細かく分割する「モジュール化」という設計原則に繋がり、各モジュールの独立性を高める。結果として、ある機能に変更があっても他の部分への影響を最小限に抑えたり、同じ機能を別の場所で再利用したりすることが容易になる。システムの規模が大きくなればなるほど、このような設計思想は開発効率の向上、バグの抑制、そしてチーム開発におけるコードの理解と連携のスムーズさに大きく貢献する。したがって、システムエンジニアを目指す上で、引数の概念とその重要性を深く理解することは、高品質なソフトウェア開発を行うための第一歩と言える。

関連コンテンツ

関連ITニュース

関連プログラミング言語

関連プログラミング学習