Так что я оба новичок в Prolog и Ruby. Изучение Пролога в университете и Ruby на мой собственный. И я думал, если в Ruby есть переменная «не заботясь» или «отбросить», как есть в Prolog.Ruby «не волнует меня», как у Prolog?
Я только что открыл IRB и просто сделал это (предположит, подчеркивание было «не волнует» знак)
1.9.2-p290 :003 > _, b, c = [1,2,3]
=> [1, 2, 3]
1.9.2-p290 :004 > b
=> 2
1.9.2-p290 :005 > c
=> 3
Результатов на самом деле то, что я ожидал. Но тогда мне было интересно, о том, что где значении подчеркивания и к какому классу он был
1.9.2-p290 :006 > _
=> 3
1.9.2-p290 :008 > _.class
=> Fixnum
Ну, это странно. Разве это не должно отбрасывать ценность? Почему сохраняется другая ценность?
Затем, делая больше тестов с подчеркиванием, я увидел, что на самом деле произошло, оно имеет последнее оцениваемое значение.
1.9.2-p290 :017 > 1
=> 1
1.9.2-p290 :018 > _
=> 1
1.9.2-p290 :019 > "string"
=> "string"
1.9.2-p290 :020 > _
=> "string"
1.9.2-p290 :021 > Hash
=> Hash
1.9.2-p290 :022 > _
=> Hash
Так что мой вопрос: на что же важно подчеркнуть? Это действительно неважно, переменная или что-то еще? Каково настоящее имя? (потому что я не нахожу много вещей с «не заботясь о рубиновой переменной» с google)
Связанный вопрос: HTTP://stackoverflow.com/questions/9559561/where-and-how-is-the-underscore-variable-specified-in-ruby –