[Development] Would it make sense to make QObject moveable in Qt 6?

Ansel Sermersheim ansel at copperspice.com
Fri Aug 26 23:10:23 CEST 2016


On 08/25/2016 02:48 AM, Marc Mutz wrote:
> On Wednesday 24 August 2016 20:05:56 Kuba Ober wrote:
>> `QObject` is already pretty much a handle to the underlying data due to
>> pimpl. So that’s a good first step.
> I challenge the notion that QObject is a handle to date.
>
> QObject is first and foremost the base class of a polymorphic class hierarchy.
>
> If you wrap that in a parallel value-like-but-not-quite class hierarchy, you
> end up with QDomNode. I don't like QDomNode. Do you like QDomNode?
>
> That said, the Copperspice guys argue that the implicit memory management of
> QObject parent-child relationships is becoming alien for C++ developers. The
> Qt community can of course deny every claim that comes from that direction,
> but sometimes the look of an outsider is valuable, too. After all, the API
> quality matters most for newbies, not decade-long Qt users.
I would like to confirm your observation about our direction for 
CopperSpice is
accurate. It is our goal to modify QObject so users can leverage shared 
pointers to
manage the lifetime of QObjects.

One of the ways we moved this forward is by refactoring QObject. We 
developed a
completely new standalone signal/slot library which is independent of 
CopperSpice
and can be used in any C++ project. CopperSpice was then modified to use 
the new
CsSignal library. During this refactoring we were able to improve the 
maintainability
of QObject by separating some of the functionality.

As an off topic comment I wanted to briefly mention why the key 
developers of CopperSpice
scaled back work over the past two months. Barbara had a total knee 
replacement and
she is recovering nicely, but physical therapy has been her main focus. 
I am looking
forward to her full return to the office and continued work on 
CopperSpice and DoxyPress.

Ansel Sermersheim
CopperSpice Cofounder



More information about the Development mailing list