gpt4 book ai didi

c# - .net 中对象的装箱发生在什么级别?

转载 作者:行者123 更新时间:2023-11-30 19:06:48 24 4
gpt4 key购买 nike

如果我有一个对象,例如 List<string>我把它扔进了 object ,然后再回来,所有字符串都会被转换还是只转换包含它们的列表?

我认为编译器只需要检查 object类型为 List<string>在投回 List<string> 之前但我是在 C# 中长大的,所以我不完全确定我编写的代码背后发生了什么。

最佳答案

当你施放 List<string>object ,您实际上根本没有进行任何转换。您正在将对某些数据的一个引用分配给一个不太具体的引用。 string它包含的对象也完全没有改变。


此外,需要澄清的是,此案例中不涉及拳击。当您创建对值类型(如 int)的引用时,就会发生装箱。或一些 struct ,通过将其分配或以某种方式传递给类型为 object 的变量.

关于c# - .net 中对象的装箱发生在什么级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8838494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com