On Saturday 18 March 2017 19:30:35 Thiago Macieira wrote: > class QStringView - has all the const functions > class QString : public QStringView - adds the mutating functions > class QtExclusive::QString : public QString
No inheritance. These things have no is-a relationship whatsoever. Example: QString cannot inherit QStringView because QStringView::trimmed() returns a QStringView while QString::trimmed() needs to return a QString. These return values aren't covariant, either, because a) they're not pointers, so C++ doesn't let you, b) the functions aren't virtual so C++ won't let you and c) the QStringView implementation has no idea how to manage QString's memory. 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, C++ and OpenGL Experts _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
