On Thu, 17 Oct 2019 at 22:34, Jason H <jh...@gmx.com> wrote:
>
> You're staring down the business end of a Saturn-V...
> I for one, never liked
> QObject* x, y;
> because x is a pointer, and y is not. It seems like they should both be 
> QObject*s.
> Meanwhile:
> QObject *x, y;
> makes it very clear (clearer?) that x is a pointer and y is not.
> Parenthesizing things shows just how awkward it is:
> QObject(* x), (y); // really gotta reach for that star. (See what I did 
> there!?)
> vs.
> QObject (*x), (y);
>
> Of course readability was never C's strong suit.
> I'd be ok with single decleartions:
> QObject* x; // can't miss interpret this
> QObject y;  // or this
>
> But because you can have multiple variable declarations on a line (arguably 
> the real thing to change) we're stuck with the confluence of two rules 
> yielding chaos. This is an unfortunate lack of specificity in the standard.

I don't think this is news to anyone, but the usual suggestion to
avoid that problem is not writing comma-separated declarations. That
tends to work perhaps surprisingly well, in practice.
_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

Reply via email to