C#的值类型和引用类型的思维导图学习

这篇博客探讨了C#中的值类型和引用类型的区别,强调了堆和栈在内存管理中的作用。值类型直接存储数据,而引用类型存储数据的引用。文中通过示例解释了值参数、引用参数(ref和out关键字)的工作原理,并讨论了内存分配策略,尤其是方法内部局部变量的栈分配和堆分配。最后提到了GC(垃圾回收)如何自动回收不再使用的内存。
摘要由CSDN通过智能技术生成

这些内容可以为后面节省内存开销提供意义,优化。

注意,这里的所提的 堆和栈的概念,主要是针对于方法内部的局部变量

在类的里面和方法外面的值类型,其实也是存储在堆上的

因此,在考虑值类型和引用类型的时候,是有背景的

值类型和引用类型

应用的 区别 要记住,主要是三种区别:

1.比较

2.赋值

3.传参:

         值参数:按值传递--传递实参变量存储的内容

         引用参数:按引用传递--传递实参变量自身的内存地址 ref关键字

                           ref 直接改变内存地址 指向的数据,而不是重新开辟一个内存空间

                           *****引用参数,显然就是用来提取参数的引用的,参数的引用到底是个啥?就是那个数据的内存地址

                           *****这从英文翻译过来的,其实也挺形象的,感谢祖师爷吧,不能局限于汉语思维

         输出参数:按引用传递--传递实参变量自身的内存地址 out关键字

                           方法内部必须为输出参数赋值

     

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值