作者tomex (Tomex Ou)
看板C_Sharp
标题[问题] 取得byte阵列的指标?
时间Thu Oct 27 09:52:18 2011
在.NET里,byte[] bb = new byte[] { 1, 2, 3, 4, 5};
我想要取得bb阵列第3个开始的阵列指标名称,如:
byte[] b3 = &bb[2]; // 没这种语法
请问有人知道该如何取得吗?
一个很长的阵列,
不想让user得记住第几个开始才是该资料的位置
想在物件包装时能有像指标一样取得一个别名
让user能直接操作该子阵列...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.250.105.59
※ 编辑: tomex 来自: 111.250.105.59 (10/27 09:56)
1F:→ tomex:其实c#有提供fixed{ *p }来暂时性操作该阵列但我想长存保存 10/27 10:03
3F:→ yeo1987:但是离开fixed了...我不知道会不会发生什麽事情XD 10/27 12:28
4F:→ tomex:频繁使用fixed也会增加很大的耗能损耗。 10/27 13:10
5F:→ tomex:目前能把该位置转成IntPtr,但转回来时必须Copy,就失了原意 10/27 13:11
6F:→ yeo1987:Marshal.AllocHGlobal转成指标操作呢? 不需fixed跟copy了 10/28 01:16
7F:→ yeo1987:要记得再转回IntPtr用Marshal.FreeHGlobal释放 10/28 01:17
8F:→ tomex:我不是要操作,而是想在包装物件时提供一个别名,user简化用 10/28 02:09