First, thank you all who has answered my question!
>
> You can use either STL container classes or ROOT container classes.
>
> For example you may define your
>
> stl::vector<TH1F *> pH1Farr;
I use TObjArray and find it is more convinient. :) I can also assign a
(TTree*) to the TObjArray object:
TObjArray aaa;
aaa.Add(new TH1F(...));
aaa.Add(new TTree(...));
((TH1F *)aaa[0])->Print();
...
I begin to understand why there are so many container classes.
>
> and then use it in your code:
>
> int ERootAnalysis::InitHist(int n)
> {
> for(int i=0;i<n;i++) {
> TString hName = "h1f_"; hName += i;
> pH1Farr.push_back(new TH1F(hName.Data(),"",1000,0,1000));
> }
>
>
> I would like to mention your
> if(!pH1FArr[i]) errNum+=-1;
>
> is useless because the operator "new" ALWAYS return non-zero pointer.
>
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:05 MET