zoukankan      html  css  js  c++  java
  • C#中引用类型和值类型的区别,分别有哪些

    C#的值类型包括:结构体(数值类型,bool型,用户定义的结构体),枚举,可空类型。
    
    C#的引用类型包括:数组,用户定义的类、接口、委托,object,字符串。
    
    数组的元素,不管是引用类型还是值类型,都存储在托管堆上。
    
    引用类型在栈中存储一个引用,其实际的存储位置位于托管堆。为了方便,本文简称引用类型部署在托管推上。
    
    值类型总是分配在它声明的地方:作为字段时,跟随其所属的变量(实例)存储;作为局部变量时,存储在栈上。
    
    值类型在内存管理方面具有更好的效率,并且不支持多态,适合用作存储数据的载体;引用类型支持多态,适合用于定义应用程序的行为。
    C#的数据类型有三大类: 
    1.数值类型 
    2.引用类型 
    3.指针类型(仅用于非安全代码) 
    
    其中, 
    1.1 数值类型包括:结构类型(struct)和枚举类型(enum) 
    1.1.1 结构类型有:简单类型和用户自定义结构类型 
    1.1.1.1 简单类型有:整型(byte、sbyte、long、ulong、short、ushort、 int、uint)、浮点数类型(float、double)、十进制类型(decimal)、字符类型(char)、布尔型(bool) 
    
    2.1 引用类型又包括:类(class、object、string)、接口(interface)、数组(array)、代理(delegate) 
    2.1.1 类包括:用户自定义的类、object基类、字符串类 
    

     区别请看http://www.cnblogs.com/Autumoon/archive/2008/08/18/1270685.html

  • 相关阅读:
    MFC中注释含义
    数字时钟
    布线问题分支限界法
    精度计算大数阶乘ACM常用算法
    C++库大全
    简单文本编辑器制作windows程序设计雏形
    使用计时器方法2
    MFC常用基本数据类型
    Xcode 代码格式化/自动排版
    android的color值
  • 原文地址:https://www.cnblogs.com/178mz/p/4198435.html
Copyright © 2011-2022 走看看