I still don't see reason why compiler don't call const variants to access raw pointer http://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/tools/qshareddata.h#n76
for example here(QTextCursor) http://code.qt.io/cgit/qt/qtbase.git/tree/src/gui/text/qtextcursor.cpp#n1151 I would expect calling const variant and I think that author of that lines expect same. On Thu, Sep 20, 2018 at 10:55 AM Philippe <philw...@gmail.com> wrote: > You just have to change your line: > > Car * carPtr = &car; > with > > *const* Car * carPtr = &car; > Philippe > > On Thu, 20 Sep 2018 10:40:01 +0200 > Michal Lazo <xlazo...@gmail.com> wrote: > > > > Hello > example > https://pastebin.com/xL9yWhKe > > I never used QSharedDataPointer in my code but is is heavily used in Qt > My problem is that I found that QSharedDataPointer prefer non const > operator for access raw pointer to object instead of const variant. > And at the end non const variant call detach() = cloning object > Look at my example and plz debug if conditions > > I use compiler MSVC 2015, 2017 > > My problem is that for example QTextCursor use this constructions and it > heavily call detach. And simple call const variant of method should fix > this. > > Anybody can explain this behaviour? > > > > _______________________________________________ > Interest mailing list > Interest@qt-project.org > http://lists.qt-project.org/mailman/listinfo/interest >
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest