关于ref的一个细节点
来源:互联网 发布:阿里云恢复备份 编辑:程序博客网 时间:2024/05/19 12:13
关于ref的作用相信大家都清楚,所以在这里就不做过多的介绍了。但是有这样一个问题,但需要传递的参数是引用类型的时候,我们还需要加ref么。举个简单的例子,有一个Sort方法,需要对数组进行排序(前面的帖子说过:数组是引用类型)。比如需要对整型数组int[] myArray进行排序,那么 Sort( myArray )和 Sort( ref myArray )有区别么?
从运行结果来看,没有任何的区别。但从运行过程中关于内存的处理还是有一点区别的。
我们知道,引用类型的数据是在托管堆上,传递的是在栈上的引用(可以理解为C++中的指针)。
从运行结果来看,没有任何的区别。但从运行过程中关于内存的处理还是有一点区别的。
我们知道,引用类型的数据是在托管堆上,传递的是在栈上的引用(可以理解为C++中的指针)。
在传递过程中,如果不适用ref,则传递的是原值的一份赋值,如果使用ref,则传递的是原来的值。针对于引用类型,如果不适用ref,则在传递的时候,会在栈中另创建一个myArray1的引用,指向的是和myArray一样的托管堆中的内容。如果在前面添加引用,则会直接传递myArray这个引用。所以在引用类型前面加ref还是有区别的。不过这点区别(或者说额外创建引用的这点开销)是很小的,所以平时我们在写代码的时候不必刻意的在参数面前写上ref。
0 0
- 关于ref的一个细节点
- 关于 default-action-ref 的一个BUG
- 关于引用的一个细节
- 关于TCP_CORK的一个细节
- 关于 default-action-ref 的一个BUG 即解决方法
- 关于makefile: 一个小小的细节
- 一个关于paintComponent的小细节问题
- 关于Hashmap的一个查询细节
- c语言中关于/的一个细节
- 关于display的y一个小细节
- 关于Linux LOOPBACK网口抓包的一个细节
- 一个关于MongoDB的小细节
- 关于perl的ref 函数
- 关于perl的ref 函数
- 建议:关于CSDN “首页头条”的一个细节问题
- 关于结构体初始化需要注意的一个细节
- 关于Reactor handle_events( ACE_Time_Value * max_wait_time ) 的一个小细节问题
- 关于冒泡排序中一个细节的答疑
- 远程抹掉iPhone
- spring-data-mongodb 使用笔记
- 获取历史天气数据,数据挖掘必备
- 怎么去掉uueasy弹窗方法,如何屏蔽uueasy.com弹窗教程
- debian安装完成后的一些设置
- 关于ref的一个细节点
- 爱分享最新文章更新(二)
- Mac下开发LeapMotion的MyEclipse环境配置-MAC下之JAVA开发
- 数组指针和指针数组的区别
- 关于异常的疑难解答:System.BadImageFormatException
- 如何隐藏站长统计代码,怎么隐藏站长统计,51.la统计代码教程
- Android 使用Scroller实现绚丽的ListView左右滑动删除Item效果
- 教你怎么删掉dedecms5.7后台登陆页面的广告
- DVFS--动态电压频率调整