C#中的装箱和拆箱

作者 : 慕源网 本文共534个字,预计阅读时间需要2分钟 发布时间: 2022-02-17 共139人阅读

一句话,装箱就是将值类型转换为引用类型的过程。

int i=6; // Integer ‘i' is value type
Object o = i; // Object ‘o’ is reference type

拆箱是装箱的逆过程,例如将引用类型转换为值类型。

Object o = 6; // Object ‘o’ is reference type
Int i= (int)o; // Integer ‘i' is value type

现在想到另一个问题,

  • 什么是值和引用类型?
  • 值类型和引用类型是什么?

现在开始:

什么是值和引用类型?

值和引用类型是 c# 中的两种数据类型。

值类型

那些可以直接包含数据的变量都属于值类型数据类型。如上例,

int i=6;

在这里,我们将值直接分配给变量。

内存表示

C#中的装箱和拆箱

图表描述

在上图中,我的地址 xxxx001 直接指向这里的值 6,

例如对于一些值类型变量,

C#中的装箱和拆箱

参考类型

那些包含数据地址[Reference]的变量,而不是所有属于引用类型数据类型的数据。

如上例,

Object o = 6;

在这里,我们在引用数据 6 的地址的对象中分配值。

内存表示

C#中的装箱和拆箱

图表描述:在上图中,’xxxx0002’是对象’o’的地址,它不包含直接值,而是存储值’6’的地址,即’xxxx0003’。

一些引用类型变量的示例:

C#中的装箱和拆箱

谢谢阅读!!

非常感谢您的评论和赞美…. 🙂 


慕源网 » C#中的装箱和拆箱

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录