pondelok 9. mája 2011

Ako na možnosť Strict v aplikáciách (VB.NET)

Mnohí z vás poznajú možnosť Explicit. Keď je táto funkcia aktívna, nemôžete používať žiadne nedefinované premenné. Ďalšia dostupná možnosť je možnosť Strict. Ak je táto funkcia zapnutá, VB označí akékoľvek neskoré vyhlásenia a vyhlásenia spôsobujúce implicitné konverzie, v ktorých budú dáta stratené.

Napríklad, nasledujúci kód by narušil neskorú väzbu pri teste s možnosťou Strict:

Dim test3 As Object = Split ("1,2,3", "")
MsgBox (test3 (0))

Nasledujúci kód by však prešiel:

Dim test3 () As Object = Split ("1,2,3", "")
MsgBox (test3 (0))

Rovnako aj nasledujúci kód by narušil test s možnosťou Strict:

Dim i As Integer
TextBox1.Text = "34"
i = 360 * (CLng (TextBox1.Text) / 100)
MsgBox (i)

V prípadoch ako je tento, použite funkciu CType na explicitné konverziu výsledku:

Dim i As Integer
TextBox1.Text = "34"
i = CType (360 * (CLng (TextBox1.Text) / 100), Integer)
MsgBox (i)