Re: pointer defined but ROOT complain "not defined"

From: Benjamin Bannier <bbannier_at_gmail.com>
Date: Thu, 5 Jan 2012 17:53:09 -0500


Hi Wei,

> People usually bypass it by defining another pointer, e.g. the following
> macro:
> {
> TFile f("oo.root");
> h->Divide(h0);
> TH1F* h2 = h1;
> h->Divide(h2);
> }
>
> Is there a way not to redefine this new pointer?

I am not really sure about the underlying reason for this issues, but I can contribute another workaround.

    {

         TFile f("oo.root");
         TH1& rh = *h;
         rh.Divide(h0);
         rh.Divide(h1);

    }

The reference `rh` can of course be reseated.

This issue seems to be a limitation in either CINT or the ROOT API (not sure where), but it always good for a confusing moment. I think it would be great if this could be fixed.

Benjamin

-- 
"Good judgment comes from experience. Experience comes from bad judgment."

Received on Thu Jan 05 2012 - 23:53:18 CET

This archive was generated by hypermail 2.2.0 : Fri Jan 06 2012 - 05:50:01 CET