data.frame から継承するクラスのメソッドを作成しようとしています。私はもともと data.frame から 'show' メソッドを継承することだけを望んでいましたが、自分で書いても問題ありません。クラスと「show」メソッドを次のように定義しました。
setClass("SCvec", representation(auth = "character",
    dev = "character",
    sensor = "character",
    channel = "character",
    starttime = "character",
    endtime = "character"),
    contains="data.frame")
setMethod("show", signature(x="SCvec"), function(x) print(x))
R コンソールに入力showすると、次のように出力されます。
パッケージ "methods" から定義された "show" の standardGeneric
function (object) 
standardGeneric("show")
<bytecode: 0x0396bee8>
<environment: 0x0393ab60>
Methods may be defined for arguments: object
Use  showMethods("show")  for currently available ones.
(This generic function excludes non-simple inheritance; see ?setIs)
したがって、自分で StandardGeneric() を使用してジェネリックに変換する必要はないようです。しかし、setMethod("show", signature(x="SCvec"), function(x) print(x))行を実行するとエラーが発生します
Error in match.call(definition, call, expand.dots) : 
  unused argument(s) (x = c("SCvec", ""))
他のメソッドを定義するのと同じように、このメソッドを定義しました。このメソッド定義が機能しないのはなぜですか? 「show」は他のジェネリック関数とは異なりますか?