Trailing comma in variable declaration
Ky-Anh Huynh
saigon at example.net
Tue Jul 31 06:49:54 UTC 2018
On Sunday, 29 July 2018 at 10:46:12 UTC, Jonathan M Davis wrote:
>
> Well, most folks would just make those separate statements, in
> which case, there would be no commas at all. Some folks do put
> multiple variable declarations on a single line, but if you do
> that, a trailing comma looks terrible. I doubt that using a
> single statement to declare multiple variables but putting it
> on multiple lines was even a use case that was really
> considered. Also, a quick test with a C++ compiler shows that
> it's not legal there, so the rules we have with regard to this
> probably just came from C++. AFAIK, the only significant change
> that D has from C/C++ with regards to declaring multiple
> variables in a single statement is that the * is considered
> part of the type and thus
>
> int* a, b, c;
>
> declares three variables of type int* in D, whereas in C/C++,
> it would declare a single variable of type int* and two of type
> int.
>
> - Jonathan M Davis
Thanks a lot for your explantion, Jonathan.
I understand the idea is to minimize the differences between
C/C++ and D (FIXME.) Anyway the missing feature suprised me; I
thought variable declaration is simply a (compile time) list, and
as an array, leading comma was acceptable :)
More information about the Digitalmars-d
mailing list