[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