Необязательные параметры

Классы / Методы

new_greeting <- function(name) {
  structure(list(name = name),
            class = "Greeting")
}

# ... lets methods add their own parameters
say_hello <- function(greeting, ...) {
  UseMethod("say_hello")
}

say_hello.Greeting <- function(greeting,
                               message = "Hello",
                               ...) {
  cat(message, ", ", greeting$name, "!\n",
      sep = "")
}

greeting <- new_greeting("Ann")
say_hello(greeting)
# prints "Hello, Ann!"

say_hello(greeting, "Hi")
# prints "Hi, Ann!"