On Tuesday 03 October 2006 15:58, Cyrille Berger wrote: > Hello > > Can we have the kde3 behaviour back for smart pointer ? The new one > is really painfull. We use them a lot in krita, and what we want is > them to be use transparently as if they were "normal" pointers. > > I mean for instance: > > typedef KSharedPtr KisPaintDeviceSP; > typedef KSharedPtr KisDeviceSP; > KisPaintDeviceSP pd = KisPaintDeviceSP(new KisPaintDevice()); KisPaintDeviceSP pd(new KisPaintDevice()); > KisDeviceSP d = KisDeviceSP( pd.data()); // Assuming that > KisPaintDevice inherits from KisDevice Yeah, a converting "copy ctor" is missing. BTW, KisDeviceSP( pd.data()) is asking for trouble (double deletion). > instead of > KisPaintDeviceSP pd = new KisPaintDevice(); > KisDeviceSP d = pd; > > And there is also pd.isNull instead of pd == 0. !pd > And I forget other difference of behaviour between our smartpointers > and the "normal" pointers. ???