六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

VB.NET特征之FieldOffset特征

[摘要]VB.NET特性 -----FieldOffset特性 在選擇顯示布局的時候,結構中的所有變量的定義必須包含FieldOffset特性。這個特性指定了距結構開始處的距離(以字節位單位)。 Imports System...
VB.NET特性

-----FieldOffset特性





在選擇顯示布局的時候,結構中的所有變量的定義必須包含FieldOffset特性。這個特性指定了距結構開始處的距離(以字節位單位)。



Imports System.Runtime.InteropServices

<StructLayout(LayoutKind.Explicit)> _

Structure test

<FieldOffset(0)>Dim Red as Byte

<FieldOffset(1)>Dim Green as Byte

<FieldOffset(2)>Dim Blue as Byte

<FieldOffset(3)>Dim Alpha as Byte

End Structure



StructLayout特性與FieldOffset特性可以實現聯合(union)。聯合(union)已經被多種語言(如 c和c++)采用,但是vb卻不具備這一語言特性。聯合(union)是一種可以使得結構中的兩個或多個元素在內存中重疊,以及使用不同的名稱來指示同一內存位置。



在.NET中,聯合(union)的關鍵在于支持顯示結構布局。



如:

Imports System.Runtime.InteropServices

<StructLayout(LayoutKind.Explicit)> _

Structure test

<FieldOffset(0)>Dim Red as Byte

<FieldOffset(1)>Dim Green as Byte

<FieldOffset(2)>Dim Blue as Byte

<FieldOffset(3)>Dim Alpha as Byte

<FieldOffset(0)>Dim Value as Integer

End Structure



則這些元素在內存中的位置,如圖:






這樣就可以通過Value 字段將4個字節作為一個整體進行訪問。



'拆分

Dim rgb as test

rgb.Value=&H112233 '1122867

Console.Write("Red={0},Green={1},Blue={2}",rgb.Red,rgb.Green,rgb.Blue)



輸出如:








‘合并

rgb.Red=51

rgb.Green=34

rgb.Blue=17

Console.Write(rgb.Value)

輸出如:










這樣就可以解決很多轉換的工作,而且比使用數學運算符更快!




主站蜘蛛池模板: 日产精品一区到六区免费 | 一二三四影院免费观看 | 亚洲大片免费观看 | 青草悠悠视频在线观看 | 青青青激情视频在线最新 | 天天性综合| 日日拍夜夜操 | 一级黄色片在线播放 | 亚洲一区在线视频 | 涩涩网页| 日韩视频观看 | 亚洲视频在线免费 | 色又色 | 日本不卡一区二区三区在线观看 | 日韩伦理一区二区 | 日韩中文有码高清 | 四虎www成人影院免费观看 | 一二三四免费观看在线8 | 日韩不卡一区二区 | 午夜噜噜 | 欧美亚洲精品在线 | 天堂网中文字幕 | 一级做a爰片久久毛片图片 一级做a爰片久久毛片人呢 | 欧美影院久久 | 日本乱码一卡二卡三卡永久 | 日本人妖在线观看 | 欧美亚洲黄色 | 日韩欧美在线综合网 | 热久久中文字幕 | 欧美在线看片a免费观看 | 三级黄色片在线播放 | 四虎新地址 | 日本国产免费一区不卡在线 | 亚洲最大成人 | 手机看片91| 三级理论手机在线观看视频 | 欧美一级高清在线观看 | 日产一区二区三区 | 一二三四手机在线观看视频播放 | 色五月情 | 亚洲国产日韩在线观看 |