Singleton パターンで、initializeを利用したい。
考え方が間違っているかもしれないが。
class DisplayOutPutOn def out_put puts "DisplayOutPutOn" end end class DisplayOutPutOff def out_put puts "DisplayOutPutOff" end end require 'singleton' class Display include Singleton def initialize(displayOnOff = true) #displayOnOffがtrueかfalseで、振る舞いを変えたい。 if displayOnOff @Display = DisplayOutPutOn.new #trueなら出力する。 else @Display = DisplayOutPutOff.new #falseなら出力しない。 end end def out_put #初期化時に振る舞いが決まる。 @Display.out_put end end display = Display.instance(false) #出力しないを設定 display = Display.instance(true) #出力するを設定 (エラーになってしまう。引数を設定しなければ異常は起きない。) display.out_put #実際は出力しないにしたい。
インスタンスを作成する時に、initializeに引数を渡したいのだけれども、どうしたらいいものか。。。