[Development] The future of smart pointers in Qt API
Vitaly Fanaskov
vitaly.fanaskov at qt.io
Fri Jan 31 16:46:28 CET 2020
Well, I think there are at least two cases.
1) Objects managed by smart pointers not necessary to be QObjects. In
this case, everything is clear. We can use smart pointers without any
issues.
2) Current implementation of parent-child relationships. Daniel's patch
mentioned earlier in this thread is an example of how we can use smart
pointers with current parent-child model.
My personal opinion regarding 2, that it should be just properly
implemented with using smart pointers. However, it will be tough for
existing code bases to adopt it.
On 1/31/20 4:23 PM, Matthew Woehlke wrote:
> On 31/01/2020 05.07, Vitaly Fanaskov wrote:
>> We’ve been discussing for a while how Qt6 API can be improved with using
>> smart pointers. Recently we came into some conclusions and want to
>> discuss them with the community.
>>
>> Smart pointers are for sure much better to use than raw pointers for
>> many reasons. They manage lifetime automatically, show ownership
>> semantic, and make code safer.
> QObject already has these features since forever. How do you plan for
> this to interact with existing lifetime and ownership management via
> QObject?
>
--
Best Regards,
Fanaskov Vitaly
Senior Software Engineer
The Qt Company / Qt Quick and Widgets Team
More information about the Development
mailing list