zoukankan      html  css  js  c++  java
  • C#中数组值存在堆中的证据

       int num = 1000000;
                B b = new B();
                B[] arr=new B[num];
                B[] mmm = new B[num];
                for (int i = 0; i < num; i++)
                {

                    arr[i] = new B();

             //下面两句代码只能选一句,运行,在任务管理器中查看程序的内存占用量

             //mmm[i]=new B();  //若运行这一句,发现内存翻倍

                    mmm[i] = arr[i];//若运行这一句,发现内存基本不变
                }
                Console.WriteLine("完成");
                Console.ReadLine();

                Console.WriteLine(Object.ReferenceEquals(b,arr[0]));

    结论: 数组在内存中连续 应该是在栈中连续   但是栈中引用的对象在堆中不一定连续

  • 相关阅读:
    开源收集
    理财
    MSSQL
    MAC-Python
    设计模式
    数据分析
    wkhtmltopdf是一个使用webkit网页渲染引擎开发的用来将 html转成 pdf的工具
    ETL
    MQ
    Java 资源
  • 原文地址:https://www.cnblogs.com/mxw09/p/1837220.html
Copyright © 2011-2022 走看看