• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > c#值类型和引用类型使用示例

c#值类型和引用类型使用示例

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c#示例,c#代码示例,c#程序示例,c#引用类型,c#值类型和引用类型等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

在刚参加工作面试时,我们经常会遇到有关值类型和引用类型的问题,你回答的怎么样直接影响你在别人心目中的印象,你回答的不好说明你对C#没有深入的了解学习,今天我带大家回顾下C#中的引用类型和值类型。CLR支持两种类型:引用类型和值类型。虽然FCL中大多数类型都是引用类型但程序中用的最多的还是值类型。引用类型总是从托管堆上分配的,C#的new操作会返回对象的内存地址--也就是指向对象的数据的内存地址。设想假设每次使用一个Int32值时,都进行一次内存分配,性能会受到多大的影响,为了提升简单、常用的类型的性能,CLR提供了名为“值类型”的轻量级类型。值类型的实例一般在线程栈上分配。在代表值类型实例的一个变量中,并不包含一个指向实例的指针。相反,变量中包含了实例本身的字段。值类型的实例不受垃圾回收器的控制。因此,值类型的使用缓解了托管堆中的压力,并减少了一个应用程序在其生命周期需要进行的垃圾回收次数。.net framework SDK文档清楚地指出哪些类型是引用类型,哪些是值类型。任何称为“类”的类型都是引用类型,例如,System.Exception 类、System.IO.FileStream 类以及System.Random类都是引用类型。相反文档将所有的值类型称为结构或枚举。例如, System.In32结构、System.Boolean结构、System.Decimal结构、System.DayOfWeek枚举以及System.Drawing.FontStyle枚举都是值类型。所有的结构都是抽象类型System.ValueType的直接派生类。System.ValueType本身又是System.Object派生的,所有的值类型都必须从System.ValueType派生。所有的枚举都是从System.Enum抽象类型派生,后者又是从System.ValueType派生的。

以下代码演示了引用类型和值类型。

</div>

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • c#中合并excel表格的方法示例
  • C#裁剪,缩放,清晰度,水印处理操作示例
  • C#获取HTML文本的第一张图片与截取内容摘要示例代码
  • C#实现创建桌面快捷方式与添加网页到收藏夹的示例
  • C#实现的微信网页授权操作逻辑封装示例
  • C#代码实现短信验证码接口示例
  • C#信号量用法简单示例
  • C#实现冒泡排序算法的代码示例
  • C#微信公众号与订阅号接口开发示例代码
  • C#中使用基数排序算法对字符串进行排序的示例

相关文章

  • 2017-05-28C#实现单件模式的三种常用方法
  • 2017-05-28C#切换鼠标左右键习惯无需控制面板中修改
  • 2017-05-28C# webclient中文乱码问题解决方法
  • 2017-05-28c# 判断指定文件是否存在的简单实现
  • 2017-05-28C#模拟http 发送post或get请求的简单实例
  • 2017-05-28c# 服务器上传木马监控代码(包含可疑文件)
  • 2017-05-28C#检查Windows是否安装了某个服务的方法
  • 2017-05-28C#判断页面中的多个文本框输入值是否有重复的实现方法
  • 2017-05-28C# Redis学习系列(二)Redis基本设置
  • 2017-05-28C#函数式编程中的部分应用详解

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 使用Npoi操作excel的解决办法
    • 支持windows与linux的php计划任务的实现方法
    • C#数组应用分析第1/2页
    • C#实现判断当前操作用户管理角色的方法
    • C#多线程学习之(三)生产者和消费者用法分析
    • C#实现用于操作wav声音文件的类实例
    • C#转换日期类型实例
    • C#实现进程管理的启动和停止实例
    • C#4.0新特性之协变与逆变实例分析
    • c#一个定时重启的小程序实现代码第1/2页

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有