Good, that's what i exactly wanted to know. 2015-05-26 14:56 GMT+03:00 Marc Mutz <[email protected]>:
> On Saturday 23 May 2015 19:47:28 Thiago Macieira wrote: > > On Saturday 23 May 2015 15:35:23 Иван Комиссаров wrote: > > > Hi. > > > > > > I’ve created a QVector of QImages and tried to insert an image in the > > > vector: QVector<QImage> images; > > > images.insert(images.begin(), QImage()); > > > > > > I got a compiler warning saying > > > > > > "qvector.h:649:21: warning: destination for this 'memmove' call is a > > > pointer to dynamic class 'QImage'; vtable pointer will be overwritten > > > [-Wdynamic-class-memaccess]» > > > > > > This happens because QImage inherits QPaintDevice (which is virtual) > and > > > QImage is declared movable using Q_DECLARE_SHARED macro. > > > > > > Is this behavior intended? > > > > Yes. > > In Qt 6, we should probably change that to static polymorphism. E.g. > anything > with a > QPaintDevice * paintDevice() > method on can be painted-to. I ran into the polymorphism of what should be > a > value class, too, already (when implementing swap). > > Thanks, > Marc > > -- > Marc Mutz <[email protected]> | Senior Software Engineer > KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company > Tel: +49-30-521325470 > KDAB - The Qt Experts > _______________________________________________ > Development mailing list > [email protected] > http://lists.qt-project.org/mailman/listinfo/development >
_______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
