c#值类型和引用类型

1:值类型继承自system.valueType,引用类型继承自system.objectType.

值类型:

存储在栈内存中。

包括整数、浮点数、字符、布尔值和结构体等。

复制时会创建一个完全独立的副本。

引用类型:

存储在堆内存中,而变量本身存储在栈内存中,指向堆内存中的对象。

包括类、接口、委托和数组等。

复制时只是复制了引用,即指向同一对象的多个引用变量会共享相同的对象。

2:值传递是会创建一个新的副本,即在方法中修改了传递过来的变量,原来定义的变量值不会发生改变

3.引用传递,修改了传递过来的变量,原来的变量的值也会发生改变,因为引用传递指向同一个内存地址。下面以class 引用类型举例

4.字符串 (string) c#中字符串比较特殊,它是引用类型,但作为参数传递时,会创建一份新的副本,修改变量时,原来的值不会发生改变

相关推荐
Scout-leaf1 天前
WPF新手村教程(三)—— 路由事件
c#·wpf
用户298698530141 天前
程序员效率工具:Spire.Doc如何助你一键搞定Word表格排版
后端·c#·.net
mudtools2 天前
搭建一套.net下能落地的飞书考勤系统
后端·c#·.net
玩泥巴的3 天前
搭建一套.net下能落地的飞书考勤系统
c#·.net·二次开发·飞书
唐宋元明清21883 天前
.NET 本地Db数据库-技术方案选型
windows·c#
lindexi3 天前
dotnet DirectX 通过可等待交换链降低输入渲染延迟
c#·directx·d2d·direct2d·vortice
qq_454245033 天前
基于组件与行为的树状节点系统
数据结构·c#
bugcome_com3 天前
C# 类的基础与进阶概念详解
c#
雪人不是菜鸡3 天前
简单工厂模式
开发语言·算法·c#
铸人3 天前
大数分解的Shor算法-C#
开发语言·算法·c#