Dartにおける関数の定義

概要

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

void sampleMethod(int a, int b){
	return a + b;
}

種類

Dart言語には関数の書き方にも様々な種類が存在する。

オプション引数

[]で囲むとデフォルトの値を設定できる。

void func1(String param1, [int param2 = 0]){
	
}

Failure

デフォルトの値は必ず定数でなければいけない。

int mmutableValue = 0;
 
void func1(String param1, [int param2 = mmutableValue]){
	//これはエラー
}

Tip

DartのList型を定数として扱いたい場合はconstを付ける。

void func1(String param1, [int param2 = []]){
  //エラー
}
 
void func1(String param1, [int param2 = const []]){
  //エラーにはならない
}

名前付き引数

名前を指定する関数

void func1({String? param1, int? param2 = 0}){
	
}

必須引数

requiredキーワードで引数の設定を強制できる。
この関数を呼び出す際に引き数が明示される。

void func1({required String param1, required int param2 = 0}){
	
}
 
func1(
	param1: intValue1,
	param2: intValue2
);

プライベート関数

メソッドの前に_(アンダースコア)をつける。
これは実際にはプライベートになるわけではないがDartでは慣習的に_(アンダースコア)を付けるのが一般的となっている。

void _priavteMethod(){
	
}