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

  • 相关阅读:
    删除当前目录下除了system目录的其他文件
    单例设计模式
    系统工程师
    字符串翻转
    教育
    得到b相对于a的路径
    一段处理事务的代码
    搭讪
    win 8 ,vs2011 编程环境下,动软生成器无法连接上 sql server 2008 r2
    从asp网站编程转行到asp.net网站编程的过程
  • 原文地址:https://www.cnblogs.com/178mz/p/4198435.html
Copyright © 2011-2022 走看看