Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
ruby 中是否有 __rmul__ 的 ruby 等效项?我似乎找不到任何关于此的信息。
不确定 py,但是重载运算符*是你想要的吗?
*
如果那样的话,一个方法*就可以了。
a=Object.new def a.*(rhs); rhs+2;end a*2 #=> 4
进一步研究,似乎 rmul 的等价物是添加
def coerce(other) return self, other end
那么用 is_a 也有通常的 * 重载处理其他类型吗?
在这里查看关于coerceRuby 的讨论:
coerce
在 Ruby 中, coerce() 是如何工作的?