• 《C#入门详解》刘老师 详解类型、变量与对象


    详解类型、变量与对象

    一、类型在C#语言中的作用,一个C#类型中所包含的信息有:

    • 存储此类型变量所需的内存空间大小

    • 此类型的值可表示的最大、最小值范围

    • 此类型所包含的成员(如方法、属性、事件等)

    • 此类型由何基类派生而来

    • 程序运行的时候,此类型的变量在分配在内存的什么位置

              1.Stack简介(栈给方法调用来用的)

          2.Stack overflow

          3.Heap简介(堆用来存储对象的)

          4.使用Performance Monitor查看进程的堆内存使用量

          5.关于内存泄漏(堆内存泄漏)

    二、C#语言的类型系统

    • 装箱与拆箱

       1.装箱:  int x = 100; object obj = x ;

        (内存中,先把栈上值类型的值,在堆上找一块可以存储的空间,把数值100放入到堆上。然后在把堆这边的地址放入到栈上的位置里去)

        装箱指的是把栈上的值类型的值封装成object类型的实例搁在堆上,称之为装箱

       2.拆箱:  与装箱相反,把值从堆内存中拷贝过来(注意不是拷贝地址),然后放入到栈内存的变量中

        把堆上面object类型的实例的值按照要求拆成目标数据类型,存储到栈上去,称之为拆箱

    三、栈内存分配地址,是由高地址向低地址去分配,直到分配到栈的栈顶之后,没有内存可以分配了,这个时候栈就溢出了

  • 相关阅读:
    OpenGL简介及编程入门
    大数阶乘 我的ACM的第一步!
    解释Windows7“上帝模式”的原理
    斯特林[striling]公式(求阶乘(n!)的位数)
    VC中借助内嵌资源实现Flash动画播放
    VC MFC 精品文章收集!
    这应该是UFC有史以来最快的KO记录了
    深以为然
    PS3欧洲延期!全球同步发售幻想破灭
    Windows Vista RC1 NVIDIA drivers include OpenGL ICD
  • 原文地址:https://www.cnblogs.com/zfcsharp/p/13694095.html
Copyright © 2020-2023  润新知