栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

什么时候复制C#值/对象,什么时候复制其引用?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

什么时候复制C#值/对象,什么时候复制其引用?

如果不花大量时间仔细挑选您的单词,就很难准确地回答此类问题。

我已经在几篇文章中这样做了,您可能会发现它们很有用:

  • 在C#/ .NET中传递参数
  • C#/ .NET中的引用类型和值类型

当然,这并不是说这些文章是完美的-远非如此-但我已尽我所能地做到了清晰。

我认为重要的是要把两个概念(参数传递和引用与值类型)分开。

要查看您的特定示例:

SomeForm myForm = new SomeForm();SomeObject myObject = new SomeObject();myForm.formObject = myObject;

这意味着

myForm.formObject
myObject
指的是相同的实例
SomeObject
-就像两个人有分开的纸,每个人都写有相同的地址。如果转到一张纸上的地址并将房子漆成红色,然后转到第二张纸上的地址,则会看到一个红色的房子。

不清楚“然后修改表单中的对象”是什么意思,因为提供的类型是不可变的。无法修改对象本身。您可以更改

myForm.formObject
以引用的其他实例
SomeObject
,但这就像在一张纸上写出地址并在其上写一个不同的地址一样。那不会改变另一张纸上写的内容。

如果您可以提供一个简短但 完整的 程序,但您不了解其行为(最好是控制台应用程序,只是为了使事情更简短,更简单),那么用具体的术语来谈论事情会更容易。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/452017.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号