Hosszú adattípus (Visual Basic)
Az aláírt 64 bites (8 bájtos) egész számokat a -9 223 372 036 854 775 808 és 9 223 372 036 854 775 807 közötti értékben tárolja (9,2...E+18).
Megjegyzések
Long
Az adattípussal olyan egész számokat tartalmazhat, amelyek túl nagyok ahhoz, hogy elférjenek az Integer
adattípusban.
Az alapértelmezett érték Long
0.
Konstans hozzárendelések
A változók deklarálhatók és inicializálhatók Long
úgy, hogy decimális literált, hexadecimális literált, oktális literált vagy (a Visual Basic 2017-től kezdődően) bináris literált rendelnek hozzá. Ha az egész szám konstansa kívül esik a tartományon Long
(vagyis kisebb vagy nagyobb, mint Int64.MinValue Int64.MaxValue), fordítási hiba lép fel.
Az alábbi példában a decimális, hexadecimális és bináris literálként ábrázolt 4 294 967 296-os egész számok vannak hozzárendelve az értékekhez Long
.
Dim longValue1 As Long = 4294967296
Console.WriteLine(longValue1)
Dim longValue2 As Long = &H100000000
Console.WriteLine(longValue2)
Dim longValue3 As Long = &B1_0000_0000_0000_0000_0000_0000_0000_0000
Console.WriteLine(longValue3)
' The example displays the following output:
' 4294967296
' 4294967296
' 4294967296
Feljegyzés
Az előtagot &h
vagy &H
egy hexadecimális literált, az előtagot &b
vagy &B
egy bináris literál jelölését, valamint az előtagot &o
vagy &O
egy oktális literál jelölését használhatja. A tizedes literálok nem rendelkeznek előtaggal.
A Visual Basic 2017-től kezdve az aláhúzásjelet is használhatja számjegyelválasztóként _
az olvashatóság javítása érdekében, ahogy az alábbi példa is mutatja.
Dim longValue1 As Long = 4_294_967_296
Console.WriteLine(longValue1)
Dim longValue2 As Long = &H1_0000_0000
Console.WriteLine(longValue2)
Dim longValue3 As Long = &B1_0000_0000_0000_0000_0000_0000_0000_0000
Console.WriteLine(longValue3)
' The example displays the following output:
' 4294967296
' 4294967296
' 4294967296
A Visual Basic 15.5-től kezdve az aláhúzásjelet (_
) is használhatja vezető elválasztóként az előtag és a hexadecimális, bináris vagy oktális számjegyek között. Példa:
Dim number As Long = &H_0FAC_0326_1489_D68C
Ha az aláhúzásjelet vezető elválasztóként szeretné használni, a következő elemet kell hozzáadnia a Visual Basic-projektfájlhoz (*.vbproj):
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
További információ: A Visual Basic nyelvi verziójának kiválasztása.
A numerikus literálok az L
adattípus jelölésére Long
szolgáló típus karaktert is tartalmazhatják, ahogyan az az alábbi példában is látható.
Dim number = &H_0FAC_0326_1489_D68CL
Programozási tippek
Interop szempontok. Ha nem a .NET-keretrendszer írt összetevőkkel , például Automation- vagy COM-objektumokkal kommunikál, ne feledje, hogy
Long
más környezetekben eltérő adatszélesség (32 bit) van. Ha egy 32 bites argumentumot ad át egy ilyen összetevőnek, deklarálja aztInteger
az új Visual Basic-kód helyettLong
.Szélesedő. Az
Long
adattípus a következőreDecimal
szélesedik: ,Single
vagyDouble
. Ez azt jelenti, hogy hiba nélkül konvertálhatLong
bármelyik típusra System.OverflowException .Írja be a karaktereket. Ha a literál típusú karaktert
L
hozzáfűzi egy literálhoz, az az adattípushoz kényszerítiLong
. Ha hozzáfűzi az azonosítótípus karakterét&
az azonosítóhoz, az arra kényszeríti.Long
Keretrendszer típusa. A .NET-keretrendszer megfelelő típusa a System.Int64 struktúra.