我想在我的 S4 泛型中有可变数量的参数,myMethod
这样它们都是有效的:
myMethod(100)
myMethod(100, 200)
这是我对定义的尝试:
setGeneric(
"myMethod",
function(x) {
standardGeneric("myMethod")
})
setMethod(
"myMethod",
signature = c("numeric"),
definition = function(x) {
print("MyMethod on numeric")
})
setMethod(
"myMethod",
signature = c("numeric", "numeric"),
definition = function(x, y) {
print("MyMethod on numeric, numeric")
})
但是,这给出了错误:
matchSignature(signature, fdef) 中的错误:方法签名 (2) 中的元素多于函数“myMethod”的通用签名 (1) 中的元素</p>