def respond_to?(message) message = message.to_sym [:__result__, :inspect].include?(message) || __result__.respond_to? message end
提示出现这样的错误:syntax error, unexpected tIDENTIFIER, expecting keyword_end,还需要什么 keyword_end 呢?
def respond_to?(message) message = message.to_sym [:__result__, :inspect].include?(message) || __result__.respond_to?(message) end
最后那个 respond_to? 加上括号就好了。
respond_to?
#1 楼 @iwinux +1
#1 楼 @iwinux 好吧,我还很初级,在 Ruby 中忘了优先级
好吧,菜鸟问一个问题 [:result, :inspect] 这是啥意思,中括号中加符号是啥意思?他的结果是啥?我在 irb 中试了一下就是 [:result, :inspect]
#4 楼 @cbkid 就是构造了一个数组,第一个元素是 :result ,第二个元素是 :inspect 结构上和 ["reslut", "inspect"] 是一样的
:result
:inspect
["reslut", "inspect"]
恩,谢谢,刚学 ruby 不太了解,从语法上我猜测一是一个数组,但是看见他用 include?函数并且传了一个 Message 就不敢确定了。