Unsafe && Fixed 关键字

    class CaryData
    {
        public int data;
    }

    class Program
    {

        unsafe static void ChangeValue(int* pInt)
        {
            *pInt = 23;
        }

        unsafe public static void Main()
        {
            CaryData c = new CaryData();
            Console.WriteLine("改变前: {0}", c.data);

            fixed (int* p = &c.data)
            {
                *p = 23;
            }
            Console.WriteLine("改变后: {0}", c.data);

            Console.Read();
        }
    }
 //注意:指针指向的内存一定要固定。
//凡是C#里的引用类型(一切类型的数组都是引用类型)都是分配在托管堆上的,都不固定。强制固定方法用fixed分配在堆上。

 

 

posted on 2013-03-27 10:53  JackSlaterYu  阅读(165)  评论(0编辑  收藏  举报