. När du skapar variabler med Visual Basic NET många datatyper , tilldelar VB ett standardvärde att initiera dem . Till exempel , när du skapar ett heltal variabel , tilldelar Visual Basic automatiskt noll standardvärdet . Men ibland kanske du vill använda variabler som inte har definierade värden . VB har en wrapper struktur som modifierar de generiska typer så att du kan skapa nullable typer som inte har några förinställda värden . Typer
Du kan skapa nullable typer av variabler från de flesta av Visual Basic s datatyper . Alla de numeriska typer , inklusive heltal , uinteger , byte , sbyte , kort , USHORT , lång , ulong , singel och dubbel tillåter null-värden . Du kan också skapa nullable variabler från datum eller röding typer . Däremot tillåter Visual Basic inte dig att skapa nullable sträng typer . Om du försöker , uppstår ett fel som berättar sträng typer måste ha ett värde eller ha en typ argument begränsas till en struktur klass .
Syntax
VB.NET ger dig tre sätt att skapa nullable typer i ditt program . Först , kan du skriva " Dim myVariable ? As Integer " för att skapa en null heltal . Frågetecknet i slutet av variabelnamnet är en modifierare som gör att programmet inte tilldela ett standardvärde . När du använder denna variabel genom hela programmet , behöver du inte skriva frågetecken . Andra, kan du skriva " Dim myVariable As Integer ? " som en liten variant på den första vägen . Tredje , kan du skriva " Dim myVariable Som null ( Av Integer ) " att tydligt definiera denna variabel med null strukturen .
Använd
Du kanske vill att använda en null typ i en situation där du inte känner någon information. Till exempel , om du har ett program som spårar en lista med sysslor , kan du ha en boolesk variabel för den som har " true " för varje avslutad knepig och " falskt " för dem som ännu inte klar . Om du är osäker på om du avslutat en syssla , kan du använda ett null-värde som en påminnelse för att dubbelkolla att syssla att ta reda på om du avslutade det eller inte .
Överväganden
Ställa ett heltal s värde till noll , eller ens sätta ett booleskt värde till false , är inte samma sak som att ge antingen ett null- värde . Null innebär i huvudsak att en variabel saknar värde , men båda dessa åtgärder fortfarande lämna variablerna med ett värde sparas i minnet . Att ha riktiga null-värden , måste du använda null strukturen . På så sätt kan du använda " Nothing " nyckelordet för att ta bort värdet från dessa variabler i stället för att bara ställa dem till standardvärdena för respektive slag .