我听说过很多关于“类型系统”、“强类型语言”等的内容。目前我正在研究一些 .NET COM 互操作问题,它解决了很多“封送”问题。和 AFAIK,封送处理完全是关于 .NET 类型和 COM 类型之间的转换。
在编程语言等很多场景中,谈到类型时,我们关心的是逻辑含义。
现在我想知道:“类型”在物理上是什么意思?在某种程度上,我们可以观看和触摸。
我目前的理解是“类型”只不过是计算实体的内存表示。
非常感谢您的回复。
添加-1
来自MSDN的一些引用:
跨托管/非托管边界编组简单的、可blittable 结构首先需要定义每个本机结构的托管版本。这些结构可以有任何合法名称;除了数据布局之外,这两个结构的本机版本和托管版本之间没有任何关系。因此,托管版本包含与本机版本相同大小和顺序的字段至关重要。(没有确保结构的托管版本和本机版本等效的机制,因此不兼容直到运行时才会显现出来。确保两个结构具有相同的数据布局是程序员的责任。)
因此,就编组而言,布局很重要。