How do I create the default for a generic in VB? in C# I can call:
T variable = default(T);
Dim variable As T
' or '
Dim variable As T = Nothing
' or '
Dim variable As New T()
Notice that the latter only works if you specify the Structure constraint for the generic type (for reference types, New T() in VB does something else than default(T) in C#).
For value types all members of the struct are “nulled” out, i.e. all reference type members are set to null (Nothing) and all value types are in turn nulled out.
And no, since string is a reference type, it does not result in "" for strings as suggested in the other answer.
No, there's no way to specify this. There are some threads about this on Stack Overflow already, e.g. here. Jon has posted an excellent explanation why this is.