概要
オプション有りの順序付き引数
内容
Rubyの引数について。
オプション有りの順序付き引数。
オプション以外の引数はどれも常に必須であり、指定順序に依存する。
オプションはデフォルトを指定して省略可能にするパターン。
一部の引数のみ、未指定の際にデフォルト値を指定させたい場合に
呼び出し側のコードで引数を省略できるためシンプルになる。
サンプル
# encoding: utf-8 class Hoge def hogerized_message(header_message, body_message, has_question = false) question = has_question ? '?' : '' "#{header_message}_hoge_#{body_message}#{question}" end end p Hoge.new.hogerized_message "header", "body" p Hoge.new.hogerized_message "header", "body", true p Hoge.new.hogerized_message "header", "body", false
出力
"header_hoge_body" "header_hoge_body?" "header_hoge_body"