gpt4 book ai didi

c# - 值类型如何/为什么可能从引用类型派生?

转载 作者:太空宇宙 更新时间:2023-11-03 17:54:57 25 4
gpt4 key购买 nike

.NET 中,所有值类型都继承自名为 System.ValueType 的类. System.ValueType 是一个类,所以它是一个引用类型

我的问题是值类型如何以及为什么可能从引用类型派生?

最佳答案

下面是文档中的关键段落

Although ValueType is the implicit base class for value types, you cannot create a class that inherits from ValueType directly. Instead, individual compilers provide a language keyword or construct (such as struct in C# and Structure…End Structure in Visual Basic) to support the creation of value types.

当编译器编译 System.Object 的重写虚方法时,就会发生继承。 System.ValueType 类只是提供更合适的 ToString()GetHashCode() 等重载。正如文档所述,编译器使用这些重载如果使用了 struct 关键字(在 C# 中)。这告诉编译器使用 System.ValueType 方法而不是 System.Object 方法。

关于c# - 值类型如何/为什么可能从引用类型派生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13564090/

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