> In VB.NET methods how do you declare an optional byref argument as an array of a custom class you created?

In VB.NET methods how do you declare an optional byref argument as an array of a custom class you created?

Posted at: 2014-12-18 
what if you just set a 0 value? wont it change once you process the class anyways?

For example

public function GetValueOfTheseCars( optional byref TheCarsList as array of cars = {} )

Public Class cars

etc...

VB.NET says I have to specify a default value if TheCarsList is optional, but then I can't figure out how to specify a default value when that default value is actually a custom class. You can tell from the above code what I'm trying to do but the compiler doesn't like that code, how do you change it so it will compile?