On Tuesday February 21 2012, Marc Mutz wrote:
> On Tuesday February 21 2012, Marc Mutz wrote:
> > Hi,
> >
> > The QString header contains a ### about removing sprintf() in 5.0, but
> > it's still there. I'd like to deprecate them.
> >
> > I have a long-standing hate of the fact that QString::sprintf() is not
> > static, so my preferred solution would be to make it static, but that
> > silently breaks existing usage other than the idiomatic
> > QString().sprintf().
> >
> > Unless there's a clever technique by which we can at compile-time catch
> > non-static uses of sprintf(), I'd propose to just deprecate it.
>
> Actually, I just found GNU's asprintf() extension ("allocated-string
> printf"), arguably a better name for QString::sprintf() anyway. So I'll
> upload a patch to Gerrit that will:
>
> 1. Deprecate QString{v,}sprintf()
> 2. Add static QString::{v,}asprintf()https://codereview.qt-project.org/#change,17062 The patch also nicely highlights how and where QString().sprintf() is used in Qt itself, because it adjusts all callers. Before vetoing the patch on the grounds of C-style API, please remember that this functionality is required for qDebug() and that we want to keep SiC as much as possible for 5.0. A C++11-style framework is a lot more work, and not something I'd expect to land in 5.0. My main drive is the embarrassment of having sprintf not static. Thanks, Marc -- Marc Mutz <[email protected]> | Senior Software Engineer KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutions
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
