vb.net教程結構 vb net從入門到精通

在vb.net中如何使用結構體

1、先定義一個結構體

成都創(chuàng)新互聯(lián)公司主要從事成都網站制作、成都網站設計、網頁設計、企業(yè)做網站、公司建網站等業(yè)務。立足成都服務西陵,十余年網站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108

2、初始化并定義一個結構體的變量

3、使用該變量即可

在VB.net中如何取變量、結構、數組、函數的地址?

當然可以的,需要System.Runtime.InteropServices?命名空間中的?Marshal?類

Imports?System.Runtime.InteropServices?'這里一定要有?

Public?Class?Form1

Public?Structure?m_Point

Dim?x?As?Integer

Dim?y?As?Integer

End?Structure

Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click

Dim?i?As?Integer?=?50

Dim?ai()?As?Integer?=?{1,?2,?3,?4,?5}

Dim?pi?As?IntPtr?=?GCHandle.Alloc(i,?GCHandleType.Pinned).AddrOfPinnedObject()?'取得整形變量的指針?

Dim?pai?As?IntPtr?=?GCHandle.Alloc(ai,?GCHandleType.Pinned).AddrOfPinnedObject()?'取得整形數組首地址指針

MsgBox(Marshal.ReadInt32(pi,?0))?'讀回整形變量指針指向的值

MsgBox(Marshal.ReadInt32(pai,?0?*?4))?'讀回數組的第一個元素

MsgBox(Marshal.ReadInt32(pai,?1?*?4))?'讀回數組的第二個元素

MsgBox(Marshal.ReadInt32(pai,?2?*?4))?'讀回數組的第三個元素

'-----下面是結構--------------------------

Dim?m_p?As?New?m_Point

m_p.x?=?100

m_p.y?=?50

Dim?pm_p?As?IntPtr?=?GCHandle.Alloc(m_p,?GCHandleType.Pinned).AddrOfPinnedObject()?'取得結構首地址指針?

MsgBox(Marshal.ReadInt32(pm_p,?0?*?4))?'讀回結構的第一個值

MsgBox(Marshal.ReadInt32(pm_p,?1?*?4))?'讀回結構的第二個值

End?Sub

End?Class

VB.NET 里 結構(Structure)和類(Class)有什么區(qū)別?如題 謝謝了

Structure是值類型,classe是引用類型 Structure用棧來分配; classe用堆來分配 structure的成員默認情況下是公共的,而Class的成員變量和常量默認情況下是私有的而其它成員默認情況下是公共的.這與VB6是相兼容的。 structure必須至少有一個非共享的成員變量或事件成員,class可以完全是空的. Structure的成員不能聲明成Protected; class成員可以. 一個structure過程只能在它是一個Shared Sub時才能handle events而且只能通過AddHandler語句;而任何class過程都可以handle events,既可以用Handles關鍵字或 AddHandler語句。 Structure variable declarations cannot specify initializers, the New keyword, or initial sizes for arrays; class variable declarations can. Structure繼承自ValueType類,不能從其它任何類型繼承; classes可以從任何不是ValueType的類繼承 Structure不能繼承而Class可以 Structure從來不析構terminated因此common language runtime (CLR)從來不調用它的Finalize方法,classe由垃圾回收器進行析構, 當沒有任何對該類的引用時調用它的Finalize方法 structure 不需要一個構造函數,而Class需要 Structure只能有帶參數的非共享的構造函數; classes 可以有帶或不帶參數的構造函數. 每個Structure都有一個默認的不帶參數的構造函數以對其成員進行初始化,你可以重新定義該函數

網站欄目:vb.net教程結構 vb net從入門到精通
網頁地址:http://bm7419.com/article6/ddcdpog.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供全網營銷推廣、網站導航、虛擬主機、網站維護、品牌網站建設、手機網站建設

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)