Vb.net Question

Exclamation point (!) in VB.NET

The following code is designer generated:

Me.lblXRay.Font = New System.Drawing.Font("Arial", 8.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))

What does

Answer Source

This dates back to very early versions of Microsoft Basic. These type characters let you both set the type of an identifier and a literal:

    Dim singleVar! = 1.2!
    Dim doubleVar# = 1.2#
    Dim decimalVar@ = 1.2@
    Dim integerVar% = 12%
    Dim longVar& = 12&
    Dim stringVar$ = "12"

    Function ReturnsString$(ByVal takesLong&)