BlueRaja - Danny Pflughoeft BlueRaja - Danny Pflughoeft - 3 months ago 23
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
8.0!
mean?

Answer

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&)