An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20110616/16162ca2/attachment.pl>
Question about R.oo package
2 messages · Kaisers at med.uni-duesseldorf.de, Henrik Bengtsson
11 days later
Hi W. Kaisers, sorry for the delay - I just spotted you question:
On Thu, Jun 16, 2011 at 5:52 AM, <Kaisers at med.uni-duesseldorf.de> wrote:
Dear R.oo package users, while testing some functionality of the R.oo, I found that during the first construction of a object from a class, the constructor is twice called, but only one object is finalized. In all subsequent creation processes, the constructor is (expectedly) called once.
Yes, this is the expected behavior. The reason is that the first time the constructor is called, a static instance of the class is also created (which is done by calling the constructor yet again without arguments). There is only one static instance of a class, so any following calls to the constructor will not spawn a second call. Related questions have been asked before and my answers then may clarify this further, e.g. [R] First call to constructor fails (R.oo), December 10, 2008 https://stat.ethz.ch/pipermail/r-help/2008-December/182212.html [R] Help with R.oo, July 17, 2009 https://stat.ethz.ch/pipermail/r-help/2009-July/204951.html Hope this helps Henrik
Here some example code:
library(R.oo)
setConstructorS3("Test_class",function(val) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?cat("constructor\n")
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?if(missing(val)) val<-NA;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?extend(Object(), "Test_class", .val=val) })
setMethodS3("finalize","Test_class",function(this,...) { cat("destructor\n") })
o<-Test_class(1)
rm(o)
gc()
Is there any explanation for this behaviour?
Thanks very much in advance
W. Kaisers
? ? ? ?[[alternative HTML version deleted]]
______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.