David,

On Jul 21, 2009, at 13:00 , David Scherrer wrote:

I'm wondering if there is a way to define a destructor function (to free memory) for S4 class objects in analogy to C++?

The analogy doesn't work, because in C++ you have pass-by-reference semantics, but in R you have pass-by-value. Hence in R there is no "one" object that you could finalize - there may be dozens of copies of your S4 object, so which one would you finalize? However, you can register a finalizer for reference-semantics objects (if that's what you really have), see ?reg.finalizer (and on C level R_Register*Finalizer* functions).

Cheers,
Simon


rm() combined with gc() does not seem to be a good idea (Chambers, 2008). So could it be done on the C/C++ level or is it even already available in
the "internals"?

Many thanks,
David

        [[alternative HTML version deleted]]

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel



______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to