Hello, I am just starting with root, and I am trying to compile a code without using ACLiC, but I have a small problem. In the header file used to create a dicitionary (TC_RODFragment.h) I have : ... vector < UInt_t *> *Data_Fragments; ... When I run the rootcint to create the dictionary there is no problem. However inside the Streamer method I get : ... delete *Data_Fragments; *Data_Fragments = new vector<UInt_t*>; vector<UInt_t*> &R__stl = **Data_Fragments; R__stl.clear(); TClass *R__tcl1 = TBuffer::GetClass(typeid(unsigned int*)); int R__i, R__n; R__b >> R__n; R__stl.reserve(R__n); for (R__i = 0; R__i < R__n; R__i++) { unsigned int* R__t; R__b.StreamObject(&R__t,R__tcl1); R__stl.push_back(R__t); } ... However this causes an error when trying to compile. What I had to do is to change it by hand to, so I don't get any errors : ... delete Data_Fragments; Data_Fragments = new vector<UInt_t*>; vector<UInt_t*> &R__stl = *Data_Fragments; ... My question is, why did it create inside the Streamer method *Data_Fragments instead of Data_Fragments, I how can I fix it without have to edit the file myself ? Thanks in advance, Paulo da Silva -- Paulo Vitor Magacho da Silva Office: 40-R-D01 Tel.: (+41 22) 76 71.287/73.019 ATLAS / EP / CERN Fax.: (+41 22) 76 78.350 CH-1211 Geneve 23 - Suisse/Switzerland email: Paulo.Da.Silva@cern.ch
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:12 MET