【发布时间】:2017-11-23 12:58:37
【问题描述】:
如果我输入methods(print),我会得到一长串方法。
对于data.frame 类的对象,将调用print.data.frame。
但这并不总是那么简单:
hw <- "hello world"
class(hw) # [1] "character"
没有print.character 方法。执行print(hw)时如何知道调用了哪个方法?
【问题讨论】:
-
如果没有定义,它将使用默认方法
-
print.default存在,但[.default不存在,我怎么知道c("hello","world")[2]调用了哪个方法? -
顺便说一句,你是在看到
strict包后开始检查这个的吗? -
不,我只是有时想成为源代码中的内容:),并确保我了解在构建自己的方法时发生了什么。