tworzę klasę Word
i otrzymuję błąd:TypeError: nadklasą niedopasowanie dla klasy Słowa w Ruby
TypeError: superclass mismatch for class Word
Oto kod IRB:
irb(main):016:0> class Word
irb(main):017:1> def palindrome?(string)
irb(main):018:2> string == string.reverse
irb(main):019:2> end
irb(main):020:1> end
=> nil
irb(main):021:0> w = Word.new
=> #<Word:0x4a8d970>
irb(main):022:0> w.palindrome?("foobar")
=> false
irb(main):023:0> w.palindrome?("level")
=> true
irb(main):024:0> class Word < String
irb(main):025:1> def palindrome?
irb(main):026:2> self == self.reverse
irb(main):027:2> end
irb(main):028:1> end
TypeError: superclass mismatch for class Word
from (irb):24
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.1/lib/rails/commands/console.rb:47:in `start'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.1/lib/rails/commands/console.rb:8:in `start'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.1/lib/rails/commands.rb:41:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
Wygląda sekund 'klasa Word' jest sprzeczne z pierwszym. Nie wiem, jak to wyczyścić bez zamykania IRB i ponownego otwarcia. – ScottJShea
Jako FYI mam tendencję do wykonywania klas, pętli i bardziej złożonych bloków w skrypcie i uruchamiania skryptu niż korzystania z IRB. – ScottJShea
Dobra lekcja dla nas także w tym, że zrobiłoby to samo w każdym pliku Ruby. Dzięki za przypomnienie. –