関数について

概要

プログラミングにおいて関数は無くてはならない存在である。

関数とは、特定の処理構造をひとかたまりにして定義したもの。
(例):与えられた数値の二乗の値を返す関数

# 関数の定義
def square(x):
	return x * x
 
# 関数の呼び出し
print(square(9))
print(square(2.2))
print(square(3.14))
print(square(-2))

別名をサブルーチンともいい、メインルーチンから切り離されたところで処理を行う。

また、非同期で操作させて、メインスレッドから切り離すこともできる。

クラスの中の関数のことを基本的にメソッドという。

関数の基本構造

関数は通常以下の要素で構成される。

関数名

関数を一意に識別する名前。関数名は通常、英小文字やアンダースコア(_)から始まり、他の文字、数字、アンダースコアを含むことができる。

パラメータ

関数に入力として渡す値のリスト。これらは関数内で使用できる変数として扱われる。パラメータは関数の括弧内に宣言される。

戻り値

関数が実行された後に返す値である。戻り値がある場合、関数はそれを返す。戻り値は多くの場合、return文を使用して指定される。

Tip

returnを使用しない言語も存在する。
参考 : Rust言語の関数の書き方(メソッド)

処理内容

関数が実行する具体的なタスクやアルゴリズムがここに含まれる。

C言語

例えばC言語で関数を記述すると以下のとおりである。

概要

Cの関数の書き方は、返り値 関数名(引数の型 引数){ 処理 }と記述する。
以下にコード例を示す。

int plus(int a, int b){
	return a + b;
}
元記事へのリンク

Dart言語

Dart言語では以下のとおりである。

概要

Dartでは関数の定義を行うことが出来る。
最も基本的な関数の書き方を以下に示す。
基本的な書き方はCの関数の書き方と同じである。

void sampleMethod(int a, int b){
	return a + b;
}
元記事へのリンク

TypeScript言語

TypeScript言語では以下のとおりである。

メソッド

こちらもアクセス修飾子を用いてメソッドを作成する。

class Foo{
	private hoge = 0;
	public huga = 0;
	constructor(_num: number){
		this.hoge = _num;
	}
	
	public calc() : number{
		this.showConsole();
		return this.hoge + this.huga;
	}
	
	private showConsole(){
		console.log(`hoge = ${this.hoge}, huga = ${this.huga}`)
	}
}
元記事へのリンク