我意识到使用S3的阶级结构的好处。 有没有该变体使用任何的建议:
-
fun.class1 <- function(x, ...)
-
fun.class2 <- function(x)
看来,他们总是工作都...
重复的例子:
fun.default <- function(x) {
print("default")
return(x)
}
fun.class1 <- function(x, ...) {
print("class1 ellipsis")
res <- x[y]
return(res)
}
fun.class2 <- function(x) {
print("class2 only x")
res <- x[y]
return(res)
}
my_fun <- function(x) {
res <- UseMethod("fun")
return(res)
}
x <- structure(c(1, 2), class = c("numeric", "class1"))
y <- 1
my_fun(x)
# [1] "class1 ellipsis"
# [1] 1
x <- structure(c(1, 2), class = c("numeric", "class2"))
y <- 1
my_fun(x)
# [1] "class1 ellipsis"
# [1] 1