I was 读一篇文章 https://learn.microsoft.com/en-US/dotnet/csharp/language-reference/keywords/sizeof关于如何使用sizeof
C# 中的运算符。
他们说:“用于获取非托管类型的大小(以字节为单位)。”
我知道托管代码和非托管代码之间的区别。但我的理解是,我用 C# 编写的所有代码(包括所有预定义和用户定义的类型)都是由 CLR 管理的。那么“非托管类型”是什么意思呢?
术语“非托管类型”有点误导:不是在非托管代码中定义的类型。它是一种不包含垃圾收集器管理的引用的类型。
在 C# 7.3 中甚至还有通用约束unmanaged https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/generics/constraints-on-type-parameters:
[...] 不得是引用类型,并且不得在任何嵌套级别包含任何引用类型成员。
如果您有使用 WinAPI 的经验:非托管类型最初建议的名称是blittable https://github.com/dotnet/csharplang/issues/187.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)