Veri Türü Özeti (Visual Basic)

Aşağıdaki tabloda veri Visual Basic türleri, destekleyen ortak dil çalışma zamanı türleri, nominal depolama alanı ayırmaları ve değer aralıkları yer alır.

Visual Basic türü Ortak dil çalışma zamanı türü yapısı Nominal depolama alanı ayırma Değer aralığı
Boole Boolean Platformu uygulamaya bağlıdır True veya False
Bayt Byte 1 bayt 0 ile 255 (imzasız)
Char (tek karakter) Char 2 bayt 0 ile 65535 (imzasız)
Date DateTime 8 bayt 1 Ocak 0001 ile 11:59:59 PM arasında 31 Aralık 9999'da 0:00:00 (gece yarısı)
On -da -lık Decimal 16 bayt Ondalık noktası olmayan 0 ile +/-79.228.162.514.264.337.593.543.950.335 (+/-7.9...E+28) †; 0 ile +/-7.9228162514264337593543950335 arasında, ondalık ayırıcının sağ tarafından 28 basamak;

Sıfır olmayan en küçük sayı +/-0.000000000000000000000000000 (+/-1E-28)
Çift (çift duyarlıklı kayan nokta) Double 8 bayt Negatif değerler için -1,79769313486231570E+308 ile -4,94065645841246544E-324 †;

Pozitif değerler için 4,94065645841246544E-324 ile 1,79769313486231570E+308
Tamsayı Int32 4 bayt -2.147.483.648 ile 2.147.483.647 (imzalı)
Uzun (uzun tamsayı) Int64 8 bayt -9.223.372.036.854.775.808 - 9.223.372.036.854.775.807 (9.2...E+18 ) (imzalı)
Nesne Object (sınıf) 32 bit platformda 4 bayt

64 bit platformda 8 bayt
Herhangi bir tür, türünde bir değişkende depolanmış olabilir Object
Sbyte SByte 1 bayt -128 ile 127 (imzalı)
Kısa (kısa tamsayı) Int16 2 bayt -32.768 ile 32.767 (imzalı)
Tek (tek duyarlıklı kayan nokta) Single 4 bayt -3,4028235E+38 ile -1,401298E-45 değerler için;

1,401298E-45 ile 3,4028235E+38 değerler için
Dize (değişken uzunluğu) String (sınıf) Platformu uygulamaya bağlıdır 0 ile yaklaşık 2 milyar Unicode karakter
Uınteger UInt32 4 bayt 0 ile 4.294.967.295 (imzasız)
Ulong UInt64 8 bayt 0 ile 18.446.744.073.709.551.615 (1.8...E+19 ) (imzasız)
Kullanıcı Tanımlı (yapı) ('den ValueType devralıyor) Platformu uygulamaya bağlıdır Yapının her üyesinin veri türüne göre belirlenen bir aralığı vardır ve diğer üyelerin aralıklardan bağımsızdır
Ushort UInt16 2 bayt 0 ile 65.535 (imzasız)

Bilimsel bir ifadede"E", 10'ların gücünü ifade eder. Bu nedenle 3,56E+2 3,56 x 102 veya 356'ya, 3,56E-2 ise 3,56 / 102 veya 0,0356'ya işaret ediyor.

Not

Metin içeren dizeler için işlevini StrConv kullanarak bir metin biçiminden diğerine dönüştürebilirsiniz.

Bildirim deyiminde bir veri türü belirtmeye ek olarak, bir tür karakteri kullanarak bazı programlama öğelerinin veri türünü zorabilirsiniz. Bkz. Tür Karakterleri.

Bellek Tüketimi

Basit bir veri türü bildirebilirsiniz, bellek tüketiminin nominal depolama alanı ayırma ile aynı olduğunu varsayma güvenli değildir. Bunun nedeni aşağıdaki noktalardır:

  • Depolama Atama. Ortak dil çalışma zamanı, uygulamanın yürütülmektedir olduğu platformun geçerli özelliklerine göre depolama alanı atayabilirsiniz. Bellek neredeyse dolu ise, bildirilen öğelerinizi mümkün olduğunca yakın bir şekilde bir araya toplar. Diğer durumlarda performansı iyileştirmek için bellek adreslerini doğal donanım sınırlarına hizalar.

  • Platform Genişliği. Depolama 64 bit platformda atama, 32 bitlik bir platformda atamadan farklıdır.

Bileşik Veri Türleri

Yapı veya dizi gibi bileşik veri türünün her üyesi için de aynı noktalar geçerlidir. Türün üyelerinin nominal depolama ayırmalarını bir araya eklemeyi dayanamazsiniz. Ayrıca, aşağıdakiler gibi başka önemli noktalar da vardır:

  • Yükü. Bazı bileşik türlerin ek bellek gereksinimleri vardır. Örneğin, bir dizi, dizinin kendisi için ve her boyut için ek bellek kullanır. 32 bitlik bir platformda bu ek yük şu anda her boyut için 12 bayt artı 8 bayttır. 64 bitlik bir platformda bu gereksinim iki katına çıkar.

  • Depolama Düzen. Bellekte depolama sıranın bildirim sıranız ile aynı olduğunu güvenle varsayamazsiniz. 2 bayt veya 4 bayt sınırı gibi bayt hizalaması hakkında varsayımlarda bulunamaz bilesiniz. Bir sınıf veya yapı tanımlayarak üyelerinin depolama düzenini denetlemeye ihtiyacınız varsa, özniteliğini sınıfa veya StructLayoutAttribute yapıya uygulayabilirsiniz.

Nesne Yükü

Herhangi bir basit veya bileşik veri türüne başvuran, veri türünde yer alan verilere ek Object olarak 4 bayt kullanır.

Ayrıca bkz.