2
在我的包中,我想從提供的包中繼承TheBaseClass
類(因此它不在我的範圍內)。有一個創建這個類的對象的函數。這是該代碼的一個最簡單的例子。範圍S4類,如何使用超類的構造函數
setClass("TheBaseClass", representation(a="numeric"))
initBase <- function() new("TheBaseClass", a=1) # in reality more complex
現在我想簡單地使用initBase
作爲構造我的子類,但我不知道怎麼 設置新的類
setClass("MyInheritedClass", contains="TheBaseClass")
initInher <- function() {
res <- initBase()
class(res) <- "MyInheritedClass" # this does not work for S4
}
我如何可以改變的最後一行,使其工作?複製&粘貼initBase
函數不是一個選項,因爲它涉及一個.C
調用。我讀了setIs
,但這似乎不是正確的功能。
任何暗示讚賞!
這真的很有幫助;還有你連接的答案,我以前沒有找到。謝謝! – 2013-05-11 00:58:55