ある関数内で定義され、その関数内からしか呼び出すことができない関数やメソッドのことです。
プログラミング言語の種類によって対応はまちまちです。C# や Java などの言語は対応している一方、C言語や C++ のように対応していない言語もあります。
たとえば C# の場合、次のようにメソッドの中でメソッドを定義することでローカル関数になります。
void OuterFunction()
{
void LocalFunction() // ローカル関数
{
}
LocalFunction(); // ローカル関数を呼び出す
}
ある程度まとまった処理であるため関数化することが好ましいが、プログラム内のほかの箇所からは無関係であるような処理を定義することに適しています。コードの見通しがよくなるほか、関数名が衝突することを避けられるメリットもあります。一方で、ローカル関数を定義している関数だけに注目した場合、関数内にほかの関数の定義が含まれていることが、逆に読みづらいコードに感じられる場合があります。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
![]() |
管理者情報 | プライバシーポリシー |