Una conversión reciente a Ruby aquí. La siguiente pregunta no es realmente práctica; es más una pregunta sobre cómo funciona el funcionamiento interno de Ruby. ¿Es posible anular el operador de suma estándar para aceptar múltiples entradas? Supongo que la respuesta es no, dado que el operador de suma es estándar, pero quería asegurarme de que no me faltaba algo.pregunta sobre anulación + operador en ruby
A continuación se muestra el código que escribí rápidamente para verificar mis pensamientos. Tenga en cuenta que es completamente trivial/artificial.
class Point
attr_accessor :x, :y
def initialize(x,y)
@x, @y = x, y
end
def +(x,y)
@x += x
@y += y
end
def to_s
"(#{@x}, #{@y})"
end
end
pt1 = Point.new(0,0)
pt1 + (1,1) # syntax error, unexpected ',', expecting ')'
estoy de acuerdo con esa implementación, ya que tiene más sentido, pero esto fue más de un experimento de día lento de trabajo – aosik