Aracılığıyla paylaş


Kullanıcı Tanımlı Veri Türü

Verileri tanımladığınız biçimde tutar. deyimi Structure biçimi tanımlar.

Visual Basic'in önceki sürümleri kullanıcı tanımlı türü (UDT) destekler. Geçerli sürüm, UDT'yi bir yapıya genişletir. Yapı, çeşitli veri türlerinin bir veya daha fazla üyesinin birleştirilmiş olmasıdır. Visual Basic, bir yapıyı tek bir birim olarak ele alır, ancak üyelerine ayrı ayrı erişebilirsiniz.

Açıklamalar

Çeşitli veri türlerini tek bir ünitede birleştirmeniz gerektiğinde veya temel veri türlerinden hiçbiri gereksinimlerinizi karşılamadığında bir yapı veri türü tanımlayın ve kullanın.

Yapı veri türünün varsayılan değeri, üyelerinin her birinin varsayılan değerlerinin birleşiminden oluşur.

Bildirim Biçimi

Yapı bildirimi, Yapı Deyimi ile başlar ve deyimiyle End Structure biter. deyimi Structure , aynı zamanda yapının tanımladığı veri türünün tanımlayıcısı olan yapının adını sağlar. Kodun diğer bölümleri değişkenleri, parametreleri ve işlev dönüş değerlerini bu yapının veri türünde olacak şekilde bildirmek için bu tanımlayıcıyı kullanabilir.

ve End Structure deyimleri arasındaki Structure bildirimler, yapının üyelerini tanımlar.

Üye Erişim Düzeyleri

Genel, Arkadaş veya Özel gibi erişim düzeyini belirten bir Dim Deyimi veya deyimi kullanarak her üyeyi bildirmeniz gerekir. Bir Dim deyim kullanıyorsanız erişim düzeyi varsayılan olarak genel olur.

Programlama İpuçları

  • Bellek Tüketimi. Tüm bileşik veri türlerinde olduğu gibi, üyelerinin nominal depolama ayırmalarını bir araya ekleyerek bir yapının toplam bellek tüketimini güvenli bir şekilde hesaplayamazsınız. Ayrıca, bellekteki depolama sırasının bildirim sıranızla aynı olduğunu güvenle varsayamazsınız. Bir yapının depolama düzenini denetlemeniz gerekiyorsa özniteliğini StructLayoutAttribute deyimine Structure uygulayabilirsiniz.

  • Birlikte Çalışma Konuları. Otomasyon veya COM nesneleri gibi .NET Framework için yazılmayan bileşenlerle birlikte kullanıyorsanız, diğer ortamlardaki kullanıcı tanımlı türlerin Visual Basic yapı türleriyle uyumlu olmadığını unutmayın.

  • Genişletme. Herhangi bir yapı veri türüne veya herhangi bir yapı veri türüne otomatik dönüştürme yoktur. İşleç Deyimini kullanarak yapınızda dönüştürme işleçleri tanımlayabilir ve her dönüştürme işlecini veya Narrowingolarak Widening bildirebilirsiniz.

  • Karakter yazın. Yapı veri türlerinin sabit tür karakteri veya tanımlayıcı türü karakteri yoktur.

  • Çerçeve Türü. .NET Framework'te karşılık gelen bir tür yoktur. Tüm yapılar .NET Framework sınıfından System.ValueTypedevralır, ancak tek tek hiçbir yapı öğesine System.ValueTypekarşılık gelir.

Örnek

Aşağıdaki paradigma, bir yapının bildiriminin ana hattını gösterir.

[Public | Protected | Friend | Protected Friend | Private] Structure structname
    {Dim | Public | Friend | Private} member1 As datatype1
    ' ...
    {Dim | Public | Friend | Private} memberN As datatypeN
End Structure

Ayrıca bkz.