4

这可能看起来像一个愚蠢的问题,但我最近意识到 .NET 实现是用 C++/C 完成的,所以我想知道是否有任何技术原因导致我们不能在本机 C++ 中使用 .NET 库。

4

2 回答 2

8

.NET CLR是在本机代码中实现的,但使用 .NET需要启动一个 CLR 来执行代码,并通过调用 CLR 与该库进行互操作。

可以使用本机 C++ 中的 .NET 库,但它涉及通过 CLR 编组所有调用,就像使用 .NET 代码中的本机库一样。

于 2012-06-19T07:56:18.073 回答
-1

.net 并不是真正的本机代码,它被编译为字节码(也称为托管代码),类似于 java 的工作方式。然而,有一些方法可以将本机代码和托管代码联系在一起,使用单独的 DLL 并大量使用数据封送处理,但我认为不可能将它们组合在同一个二进制文件中。

于 2012-06-19T07:57:45.067 回答