为什么"A".send('!='.to_sym, "B")
在Ruby 1.8.7中引发NoMethodError而"A" != "B"
没有 - 以及Object.send
的正确语法如何?
答案 0 :(得分:5)
!=
不是ruby 1.8中的一个方法它是硬连线的否定调用==
答案 1 :(得分:3)
由于问题的后半部分尚未得到解答:
'A'.send(:==, 'B').send(:!) # Ruby 1.9
!'A'.send(:==, 'B') # Ruby 1.8