What does putting an exclamation point (!
) in front of an object reference variable do in Visual Basic 6.0?
For example, I see the following in code:
!RelativePath.Value = mstrRelativePath
What does the !
mean?
What does putting an exclamation point (!
) in front of an object reference variable do in Visual Basic 6.0?
For example, I see the following in code:
!RelativePath.Value = mstrRelativePath
What does the !
mean?
It is almost certainly a statement inside a With block:
which is syntax sugar for
which is syntax sugar for
where "DefaultProperty" is a property with dispid zero that's indexed by a string. Like the Fields property of an ADO Recordset object.
Somewhat inevitable with sugar is that it produces tooth decay. This is the reason you have to use the Set keyword in VB6 and VBA. Because without it the compiler doesn't know whether you meant to copy the object reference or the object's default property value. Eliminated in vb.net.
The exclamation point is acting as a member access operator it seems...I take that back. It is this: