日期:2014-05-17  浏览次数:21194 次

C# 中如何实现对结构体中的 指针成员变量申请栈内存?
例如我的结构体为:
   public unsafe struct SSTable		 //define structure SSTable       
    {
        public KeyType* elem;
        public int length;
    };


然后在函数中为ST.elem分配100个整型数据的内存:
 ST.length = 100;
 ST.elem = stackalloc int[ST.length];
 for (int i = 1; i <= ST.length; i++)   //初始化数组变量ST.elem
 {                 
     ST.elem[i] = elem[i];
 }

这样就出错。求解啊

------解决方案--------------------
for (int i = 0; i < ST.length; i++)
------解决方案--------------------
Marshal.AllocHGlobal