Multiassignment in VB like in C-Style languages

c#, c#-to-vb.net, c++, variable-assignment, vb.net

Solution

Expanding on Mark's correct answer

This type of assignment style is not possible in VB.Net. The C# version of the code works because in C# assignment is an expression which produces a value. This is why it can be chained in this manner.

In VB.Net assignment is a statement and not an expression. It produces no value and cannot be changed. In fact if you write the code "a = b" as an expression it will be treated as a value comparison and not an assignment.

Eric's recent blog post on this subject for C#

- http://blogs.msdn.com/ericlippert/archive/2010/02/11/chaining-simple-assignments-is-not-so-simple.aspx

At a language level assignment is a statement and not an expression.

Problem

Is there a way to perform this in VB.NET like in the C-Style languages: ``` struct Thickness { double _Left; double _Right; double _Top; double _Bottom; public Thickness(double uniformLength) { this._Left = this._Right = this._Top = this._Bottom = uniformLength; } } ```

Original source