那些基础的类型(int之类)的对象在复制传参的时候是传值,就是把值再复制一遍,然后各自成为一个对象,互不相干。
如下图:

而比较大的类型的对象一般复制赋值和传递函数参数的时候就是传引用,其中很重要的一类就是自定义的类类型的对象。
不用采用ref,out关键字,直接就是那个效果。
可能因为比较大的对象复制起来太浪费。
而这个所谓的传引用,实际上是复制了对象的地址。如下图:

这样通过两个地址访问的还是同一个对象,可以进行实时修改和参数传递。
而且把其中一个置为null也不会对另一个产生影响。
本文探讨了基础类型(如int)与较大类型(自定义类对象)在复制及函数参数传递过程中的区别。基础类型通常采用值传递,即复制一份新的对象;而较大的对象则倾向于引用传递,通过地址来实现对象的共享。
4万+

被折叠的 条评论
为什么被折叠?



