Beachten Sie Folgendes:R, R6 Überladen von Operatoren
A = R6::R6Class("ClassA")
B = R6::R6Class("ClassB")
`+.ClassA` = function(o1,o2) o1 #Trivial Example, Usually do something
`+.ClassB` = function(o1,o2) o1 #Trivial Example, Usually do something
a = A$new()
b = B$new()
a + b
, die einen Fehler wirft:
Warning: Incompatible methods ("+.ClassA", "+.ClassB") for "+"
Error in a + b : non-numeric argument to binary operator
Wie kann die oben gelöst werden, so dass beide A
und B
den +
Betreiber überlasten, und zusammen addiert werden.