1

任何人都可以向我指出如何判断,例如,+ 运算符何时在 ruby​​ 中使用,而不是 + 运算符定义内部的 += 运算符?为了显示:

class A
    def +(b)
        if is_theCallActuallyACompoundAssignment?
            compoundAssignment = true
        else
            compoundAssignment = false
        end
        doOtherStuff
    end
end

可能有内核方法吗?

4

1 回答 1

5

这段代码:

a += 5

被翻译成这样:

a = a + 5

您的+方法不会知道您收到了复合作业。

于 2012-06-20T15:23:46.967 回答