[.net] why does this compile (C#)

Started by
4 comments, last by UnshavenBastard 18 years, 4 months ago

		Point[] hatcharea = new Point[6]
				{	new Point(RightBtm.X,0), new Point(this.ClientRectangle.Right,0),
					new Point(this.ClientRectangle.Right,this.ClientRectangle.Bottom),
					new Point(this.ClientRectangle.Left,this.ClientRectangle.Bottom),
					new Point(this.ClientRectangle.Left,RightBtm.Y),
					new Point(RightBtm.X,RightBtm.Y),
				};

At the end of the last line, there's a surplus comma. shouldn't the compiler complain here? it doesn't. (VS .NET 2003)
Advertisement
While the extra comma isnt needed the compiler will simply ignore it if it exists. It's by design that this isnt an error.

ah ok, but in c++ this would be an error, right?
i was a bit confused :D
Quote:Original post by UnshavenBastard
ah ok, but in c++ this would be an error, right?
i was a bit confused :D


Nope. Don't think it is, in C, neither. (In fact, other languages may also have the same result.)
I believe the reason for this may be the same as why you can do this:

enum SomeEnum
{
Option1,
Option2,
Option3,
};

I heard that the reason for this is that it's easier to generate automatically (as in computer-generated).

- Nick
Quote:Original post by NickWaanders
I believe the reason for this may be the same as why you can do this:

enum SomeEnum
{
Option1,
Option2,
Option3,
};

I heard that the reason for this is that it's easier to generate automatically (as in computer-generated).



yeah, that makes sense, that also came to my mind.

[Edited by - UnshavenBastard on November 29, 2005 3:14:21 PM]

This topic is closed to new replies.

Advertisement