上級 › S3の print メソッドで NextMethod() を省略すると基底クラスの表示が失われる › パターン4
S3の print メソッドで NextMethod() を省略すると基底クラスの表示が失われる
S3クラスに独自のprint.myclassを定義するとき、NextMethod()を呼ばずに独自の出力だけを書くと、継承元のクラスが本来表示していた情報が完全に失われます。
1 x <- structure(list(handle = "neo", level = 5), class = "profile") 2 print.profile <- function(x, ...) { 3 cat("Handle:", x$handle, "\n") 4 ____________ ^ 5 } 6 print(x)
出力: Handle: neo
空欄を埋めて実行を通す
levelの値を表示に含めたい場合は、独自の出力の後にNextMethod()を呼んで基底クラスの表示に処理を引き継ぐ必要があります。
次の問題