zoukankan      html  css  js  c++  java
  • 引用传值

    今天在写数据结构时遇到的一个关于引用类型传参的问题

    我之前认为的引用传值:两个变量指向堆上同一个内存,一个改变另一个也会跟着改变,所以引用类型传值会形参直接改变实参,而上面的代码也很好的验证了我的猜想。但今天将代码改了下发现我之前理解的有问题,上代码

     可以看到,实参的值并没有改变。之前理解的有问题,引用传值传的引用,不是我之前理解的“指向”。举个例子,实参p的在堆上地址为0x0000,那么形参p在被赋值时也会赋值为0x0000,它们确实指向了同一个值,但是若在方法修改形参p的引用(比如形参p=new People())之类的,那么p里面的引用会改变,比如从0x0000变为0x00002 这样就不会影响实参的值了。

    我原来以为C#和C是不一样的 C或C++里面只有值类型所以要加&代表引用类型 但C#里面的引用类型更像是C里面的指针,或者说封装好的指针。所以以后还是要注意这些基础的

  • 相关阅读:
    02Hibernate入门
    01Hibernate概述
    ExtJS布局-Layout
    STARLIMS 安装升级解决方案
    Windows Server 2012 安装.Net Framework 3.5
    vim 复制操作
    linux下挂载新硬盘
    转载 更改mysql 数据存储路径
    转载 阿里云centOS防火墙配置
    (转载)java线程
  • 原文地址:https://www.cnblogs.com/TheLin/p/14746608.html
Copyright © 2011-2022 走看看