溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

VB.NET中怎么聲明結(jié)構(gòu)方法

發(fā)布時間:2021-08-11 15:55:47 來源:億速云 閱讀:88 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關(guān)VB.NET中怎么聲明結(jié)構(gòu)方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

“結(jié)構(gòu)”是 Visual Basic 早期版本支持的用戶定義類型 (UDT) 的一般化。除字段外,結(jié)構(gòu)還可以公開屬性、方法和事件。結(jié)構(gòu)可以實現(xiàn)一個或多個接口,而您可以分別為每個字段聲明訪問級別。

可以合并不同類型的數(shù)據(jù)項來進行VB.NET聲明結(jié)構(gòu)。結(jié)構(gòu)將一個或多個“元素”彼此關(guān)聯(lián)并且將它們與結(jié)構(gòu)本身關(guān)聯(lián)。聲明了結(jié)構(gòu)后,它將成為“復(fù)合數(shù)據(jù)類型”,而您可以聲明該類型的變量。

想讓單個變量持有幾個相關(guān)信息時結(jié)構(gòu)很有用。例如,您可能想將一個雇員的姓名、電話分機號和薪金放在一起。可以對這些信息使用幾個變量,或者可以定義一個結(jié)構(gòu)并將它用于單個雇員變量。當有許多雇員并且因此有該變量的許多實例時,結(jié)構(gòu)的優(yōu)點變得非常明顯。

使用 Structure 語句語句作為VB.NET聲明結(jié)構(gòu)的開始,并使用 EndStructure 語句作為結(jié)構(gòu)聲明的結(jié)束。在這兩條語句之間必須至少聲明一個“元素”。元素可以是任何數(shù)據(jù)類型,但是至少一個必須是非共享變量,或是非共享非自定義事件。

不能在VB.NET聲明結(jié)構(gòu)中初始化任何結(jié)構(gòu)元素。如果將一個變量聲明為結(jié)構(gòu)類型,則可以通過變量訪問元素來給它們賦值。

關(guān)于結(jié)構(gòu)和類之間的差異的討論,請參見結(jié)構(gòu)和類。

為演示需要,考慮一種情況:跟蹤雇員的姓名、電話分機和薪金。結(jié)構(gòu)允許在單個變量中實現(xiàn)。

聲明一個結(jié)構(gòu)

創(chuàng)建結(jié)構(gòu)的開始和結(jié)束語句。

可以使用 Public (Visual Basic)、Protected (Visual Basic)、Friend (Visual Basic) 或 Private (Visual Basic) 關(guān)鍵字指定結(jié)構(gòu)的訪問級別,或者使用默認值 Public。

Private Structure employee  End Structure

向結(jié)構(gòu)體添加元素。

結(jié)構(gòu)必須具有至少一個元素。必須在VB.NET聲明結(jié)構(gòu)的每個元素并指定其訪問級別。如果使用不含任何關(guān)鍵字的 Dim 語句 (Visual Basic),則可訪問性默認值為 Public。

Private Structure employee  Public givenName As String  Public familyName As String  Public phoneExtension As Long  Private salary As Decimal  Public Sub giveRaise(raise As Double)  salary *= raise  End Sub  Public Event salaryReviewTime()  End Structure

前面的示例中的 salary 字段是 Private,這意味著不能從結(jié)構(gòu)之外訪問該字段,即使是從包含類也不能訪問。但是,giveRaise 過程是 Public,因此可以從結(jié)構(gòu)之外調(diào)用。同樣,可以從結(jié)構(gòu)之外引發(fā) salaryReviewTime 事件。

除了變量、Sub 過程和事件之外,還可以在VB.NET聲明結(jié)構(gòu)中定義常數(shù)、Function 過程和屬性??蓪⒆疃嘁粋€屬性定義為“默認屬性”,只要該屬性具有至少一個參數(shù)??梢允褂?Shared (Visual Basic)Sub 過程來處理事件。

看完上述內(nèi)容,你們對VB.NET中怎么聲明結(jié)構(gòu)方法有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI