2012-06-20 62 views

回答

0

展望事情进一步,似乎对RMUL的equivelent是添加

def coerce(other) 
    return self, other 
end 

然后让平时*超载处理其他类型也与is_a?

2

不确定关于py,但重载运算符*你想要什么?

if then,* will be fine。

a=Object.new 
def a.*(rhs); rhs+2;end 

a*2 #=> 4 
+2

RMUL略有不同,那是因为你可以有一个像2 *对象或对象* 2我需要一台2 *对象运行somethign不是object * 2 – nekosune

+0

in ruby​​,'2 * object'是'like 2。*(object)','object * 2'是'object。*(2)'。所以有一些差异,但没有那么不同 – Jokester

+0

如果不是2,它会做些什么,它是一些其他的对象,还有一个重载*? – nekosune