thanks Philippe.
To be more precise I've to attach my file.
I point out the points where I use the <string>:
starting from line 136
//--------- Make the LIST of the data ascii file to process
system("rm -f lista.txt");
system("'ls' link | awk -F '.' '{print $0, $1}' >> lista.txt");
ifstream listafile("lista.txt");
ifstream *ff[26];
char nomeintero[20];
char nomecorto[20];
int luppa=0;
string st[26];
^^^^^^^^^^^^^^^^^^^^^^^
while(listafile>>nomeintero>>nomecorto)
{
ff[luppa] = new ifstream(nomeintero);
st[luppa]=nomecorto;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
luppa++;
}
and from line 248
// ---------- Various Tree Filling
for (int lu=0;lu<27;lu++)
{
char *nome=st[lu].c_str();
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
azione(ff[lu],cr,1,delta,nome);// call the function on top of this file
}
Thanks a lot!
Tommaso
Unfortunatly at the end of my macro I get the following error:
> > ----------
> > *** Break *** segmentation violation
> > Root > Function faitree_obj_dev() busy flag cleared
> > Function c_str() busy flag cleared
> > Function length() busy flag cleared
>
Note that in the Book "C++ Primer"
suggest to set "const" the C-style string,
i.e.
const char *nome=st[lu].c_str();
but ROOT fails (or something else goes wrong), giving this error:
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:45 MET