10.2 定义新的二元操作符
假定我们给予函数 bslash()
一个不同的名字,且以下面的形式给出
%anything%
那么它将以二元操作符(binary operator)的形式在表达式中使用,而不是函数的形式。例如我们用 !
作为中间的字符。函数可以如下定义
> "%!%" <- function(X, y) { ... }
(注意要使用引号)。该函数然后就可以以 X %!% y
的形式使用了。(两个百分号中间的字符最好不要用反斜杠符,因为在某些情况下会引入一些特别的问题。)
矩阵的乘法操作符 %*%
和外积操作符 %o%
同样是这种方式定义的二元操作符。