dark9spring 2021-11-17 13:50 采纳率: 55.6%
浏览 19
已结题

构造函数里ref传递不是同一个地址?


public class MoveTest
{
    public float a;
    public MoveTest(ref float a)
    {
        this.a = a;
    }

    unsafe public void Print()
    {
        fixed (float* i = &a) ;
    }
}

    //其他模块
    private float b = 0;

    MoveTest m = new MoveTest(ref b);
    fixed (float* i = &b) ;
    m.Print();

实测改变ab的值都对彼此无任何影响,而且debug下地址也不一样,这该怎么传地址啊?

  • 写回答

1条回答 默认 最新

  • XingyuZhao-MSFT 2021-11-22 11:09
    关注

    你想要做什么样的事呢?通常unsafe代码是很少使用的。
    也许你需要的链接: https://stackoverflow.com/questions/3261402/what-is-the-equivalent-to-passing-by-address-in-c-sharp

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月23日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表