Share via


UInteger-gegevenstype

Bevat niet-ondertekende 32-bits gehele getallen (4 bytes) variërend van 0 tot en met 4.294.967.295.

Opmerkingen

Het UInteger gegevenstype biedt de grootste niet-ondertekende waarde in de meest efficiënte gegevensbreedte.

De standaardwaarde is UInteger 0.

Letterlijke toewijzingen

U kunt een UInteger variabele declareren en initialiseren door deze toe te wijzen aan een letterlijke waarde voor decimalen, een hexadecimale letterlijke waarde, een octale letterlijke waarde of (te beginnen met Visual Basic 2017). Als de letterlijke waarde van het gehele getal buiten het bereik valt UInteger (dat wil gezegd, als het kleiner is dan UInt32.MinValue of groter is dan UInt32.MaxValue, treedt er een compilatiefout op.

In het volgende voorbeeld worden gehele getallen gelijk aan 3.000.000.000 die worden weergegeven als decimale, hexadecimale en binaire letterlijke waarden toegewezen aan UInteger waarden.

Dim uintValue1 As UInteger = 3000000000ui
Console.WriteLine(uintValue1)

Dim uintValue2 As UInteger = &HB2D05E00ui
Console.WriteLine(uintValue2)

Dim uintValue3 As UInteger = &B1011_0010_1101_0000_0101_1110_0000_0000ui
Console.WriteLine(uintValue3)
' The example displays the following output:
'          3000000000
'          3000000000
'          3000000000

Notitie

U gebruikt het voorvoegsel &h of &H om een hexadecimale letterlijke waarde, het voorvoegsel of &B om een binaire letterlijke waarde aan te geven, en het voorvoegsel &b&o of &O om een octale letterlijke waarde aan te geven. Letterlijke decimalen hebben geen voorvoegsel.

Vanaf Visual Basic 2017 kunt u ook het onderstrepingsteken gebruiken, _als scheidingsteken voor cijfers om de leesbaarheid te verbeteren, zoals in het volgende voorbeeld wordt weergegeven.

Dim uintValue1 As UInteger = 3_000_000_000ui
Console.WriteLine(uintValue1)

Dim uintValue2 As UInteger = &HB2D0_5E00ui
Console.WriteLine(uintValue2)

Dim uintValue3 As UInteger = &B1011_0010_1101_0000_0101_1110_0000_0000ui
Console.WriteLine(uintValue3)
' The example displays the following output:
'          3000000000
'          3000000000
'          3000000000

Vanaf Visual Basic 15.5 kunt u het onderstrepingsteken (_) ook gebruiken als voorloopscheidingsteken tussen het voorvoegsel en de hexadecimale, binaire of octale cijfers. Voorbeeld:

Dim number As UInteger = &H_0F8C_0326

Als u het onderstrepingsteken wilt gebruiken als scheidingsteken voor voorloop, moet u het volgende element toevoegen aan het Visual Basic-project (*.vbproj)-bestand:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

Zie De visual Basic-taalversie selecteren voor meer informatie.

Numerieke letterlijke waarden kunnen ook het UI teken of uihet type bevatten om het UInteger gegevenstype aan te geven, zoals in het volgende voorbeeld wordt weergegeven.

Dim number = &H_0FAC_14D7ui

Programmeertips

De UInteger gegevenstypen en Integer gegevenstypen bieden optimale prestaties op een 32-bits processor, omdat de kleinere typen gehele getallen (UShort, ShortByte, en SByte) zelfs als ze minder bits gebruiken, meer tijd in beslag nemen om te laden, op te slaan en op te halen.

  • Negatieve getallen. Omdat UInteger dit een niet-ondertekend type is, kan het geen negatief getal vertegenwoordigen. Als u de unaire minteken -operator (-) gebruikt voor een expressie die wordt geëvalueerd om te typen UInteger, converteert Visual Basic de expressie eerst naar Long .

  • CLS-naleving. Het UInteger gegevenstype maakt geen deel uit van de Common Language Specification (CLS), dus cls-compatibele code kan geen onderdeel verbruiken dat het gebruikt.

  • Overwegingen voor interoperabiliteit. Als u verbinding maakt met onderdelen die niet zijn geschreven voor .NET Framework, bijvoorbeeld Automation- of COM-objecten, moet u er rekening mee houden dat typen zoals uint een andere gegevensbreedte (16 bits) in andere omgevingen kunnen hebben. Als u een 16-bits argument doorgeeft aan een dergelijk onderdeel, declareert u dit als UShort in plaats van UInteger in uw beheerde Visual Basic-code.

  • Verbreding. Het UInteger gegevenstype wordt breder naar Long, ULong, Decimalen Single.Double Dit betekent dat u kunt converteren UInteger naar een van deze typen zonder dat er een System.OverflowException fout optreedt.

  • Typ tekens. Als u de letterlijke typetekens UI toevoegt aan een letterlijke tekens, wordt dit gedwongen aan het UInteger gegevenstype. UInteger heeft geen id-type teken.

  • Type framework. Het bijbehorende type in .NET Framework is de System.UInt32 structuur.

Zie ook