Witam, zaczynam moją przygodę z Ruby i natrafiłem na problem. Za zadanie mam napisanie prostej klasy, której konstruktor może przyjmować 2 argumenty (tablicę i liczbę), 1 argument (tablicę), bądź 0 argumentów.
Próbuję to zrobić, ale coś mi nie wychodzi.
Czy to jest poprawna inicjalizacja?
def initialize(tab={}, max_length)
@points=tab[:points] || nil
@max_length= max_length || 10
end
Czy też może?
def initialize(tab={}, max_length=10)
@points=tab[:points] || nil
@max_length= max_length
end
Czy też obie są złe? Bowiem jak próbuję wywołać:
obj1 = Path.new(:points=>[15,23,32],15)
Otrzymuję:
ruby.rb:21: syntax error, unexpected ')', expecting tASSOC
obj1 = Path.new(:points=>[15,23,32],15)