29.05.2019, 15:52, "Mutz, Marc via Development" <[email protected]>: > On 2019-05-29 13:52, Konstantin Tokarev wrote: >> 29.05.2019, 13:56, "Mutz, Marc via Development" >> <[email protected]>: >>> Hi, >>> >>> Here's a list of stuff I consider has served it's purpose and is no >>> longer needed, with respective replacements: >>> >>> = Priority 1 = >>> >>> == QSharedDataPointer / QExplicitlySharedDataPointer == >> >> It seems like you've forgotten migration path here. >> >> Or are all those who use intrusive reference counting in their classes >> on their own since now? > > Do you actually think it's Qt's job to define how _you_ implement your > classes?
Of course no. Except the part where Qt is a framework which heavily defines which classes should I inherit, which methods to override, etc,, it has no influence on implementation of my own classes. And it would be really weird if it provided simple base class QSharedData and a couple of related smart pointers to implement shared ownership of data. And of course, all Qt users are willing to add boost to their dependencies (with all related headaches). > In my projects, I've _always_ written my own pimpl_ptr, because > I might want to use it in backend components that don't use Qt. > > I'd suggest boost::intrusive_ptr. It has a whole ecossytem with > intrusive containers attached to it, IIRC. Great, but it's not a part of standard library, and all these extra features might not outweight having to deal with Boost. > > And to be clear: I'm not advocating removing any of these from Qt 6. > Personally, I'd deprecate them in Qt 5.14, port Qt itself away from all > of these, inline everything in 6.0, or else move it to libQt5Support, so > that a QT_DISABLE_DEPERECATED_SINCE=5.last build of Qt is as compatible > as humanly possibly for a user not setting that flag, and then remove > that stuff come Qt 7, if ever. > > But AFAIU, that's not the plan right now. Huh, what was "Priority 1" headline supposed to mean then? Sounded like a list of things to be removed ASAP. -- Regards, Konstantin _______________________________________________ Development mailing list [email protected] https://lists.qt-project.org/listinfo/development
