Herfried K. Wagner said:
That's indeed not true.
\\\
s = Nothing
///
... will assign a null-reference to the string variable, not its default
value "". Nevertheless, the string's default value when it's treated as
sort of value type is "", even if the reference points to 'Nothing'.
The reason you get back "" is that after setting the string to Nothing and
then accessing it again, the object variable is not able to access the SAME
object in memory that was available before the object was set to Nothing.
Ressurection occurs and the NEW object variable, never having been
initialized, takes on the type's default value. The ORIGINAL object is not
affected. Thus, the X=15 (that I mentioned earlier) is correct, when you
test X for zero after setting it to nothing, you are actually looking at a
different X, or I should say X is pointing at a different object in memory
(one that hasn't been initialized yet and takes on the default value of the
type).