最終更新:2022-02-18 (金) 17:15:47 (792d)
Swift/関数
func 関数名(引数の指定)->戻り値{ return 値 }
// String型とInt型の引数を受け取り、String型を返す関数 func getHoge(msg: String, count: Int) -> String { return "\(count) \(msg)!" }
違い
Swift 2
- Swift2.x までは、関数の最初の引数名は呼び出し側では省略できた
- ラベルと引数名が同じなら、#を使える
Swift 3
- 呼び出す時に最初の引数にもラベルを付ける
- ラベル名を_にすることで省略できるようにできる
引数の指定
func 関数名(ラベル1 引数名1:型1, ラベル2 引数名2:型2...)
引数名:型
ラベル 引数名:型
- 関数を呼び出すときに引数に名前を指定できる
- ショートハンド
- 下のように書くと引数名が外部名になる
- #引数名:型
引数名:タイプ=デフォルト値
- 省略しても良くなる
可変引数 (引数名:型...)
inout?引数
Swift/Trailing Closures
- 関数の最後の引数のクロージャをカッコ外に出すことができる
戻り値
- 省略するとVoid?
Swift/クラス
- 値型では内部の状態を変更するようなメソッドにはmutating?キーワードを付ける必要がある。
関数リテラル
{実行する処理} {引数 in 実行する処理}