Hi ROOTers,
does anybody know how to copy an object like a
TDirectory with lots of internal pointers without
an appropriate copy constructor (or assignement
operator)? For instance:
TGeometry *g, *new_g; // geometry pointers
< ... load a directory in dir ... >
g = (TGeometry *)(dir->Get("MYGEOM")); // get a geometry
new_g = new TGeometry(*g); // try to build a copy
< ... work on new_g ... >
delete new_g; // get rid of the copy
g = (TGeometry *)(dir->Get("MYGEOM")); // try to build a fresh copy but ...
new_g = new TGeometry(*g); // ... this gives segmentation violation
This happens (I figure out) because the destructor of a
TGeometry takes care to deallocate some objects which
won't be referenceable any more by the original TGeometry.
Is it a feature? (not to have copy constructors or assignement
operators I mean).
----------------------------------------------------------
E-Mail: Stefano Bettelli <bettelli@tn.infn.it>
WWW : http://meitner.tn.infn.it
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:39 MET