に失敗S3の印刷方式のためのオブジェクト名はS3クラスのオブジェクト "バー" と印刷方法を定義行き方:は
foo=list(1)
class(foo) <- c("bar")
print.bar <- function(x,...){
cat("print.bar says this was ",deparse(substitute(x)),"\n")
}
を今すぐプリント(fooが)、この処理を行います。
> print(foo)
print.bar says this was foo
グレート、自動印刷が失敗する:
> foo
print.bar says this was structure(list(1), class = "bar")
これは、行が最上位の式として評価される方法と関係があります。 R-develを素早く検索して無駄にしていました。誰でもそれを修正する方法を知っていますか?
私が定義しているのは関数なので、印刷メソッドに `try foo(2) 'を入れたいと思っているからです。(` foo'をオブジェクト)。はい、S3の関数をサブクラス化できます。
これはできないようです。私はソースがどのように起こるかを正確に見るためにソースを見ているかもしれません。どうも! – Spacedman