如何编译c++;在.net应用程序中使用的程序? 我试图编译一个用C++编写的程序(SULTIDROM,稀疏矩阵计算)。我需要编译它以供csharp.net应用程序使用。最好的方法是什么 1)编译和引用它和其他C++ DLL一样? 2) 是否有任何程序可以将其转换为clr(或者.net更能理解的东西) 3)?

如何编译c++;在.net应用程序中使用的程序? 我试图编译一个用C++编写的程序(SULTIDROM,稀疏矩阵计算)。我需要编译它以供csharp.net应用程序使用。最好的方法是什么 1)编译和引用它和其他C++ DLL一样? 2) 是否有任何程序可以将其转换为clr(或者.net更能理解的东西) 3)?,c++,.net,dll,clr,C++,.net,Dll,Clr,在C++程序中不能使用C++ DLL,但在C++程序中可以使用C++/CLI DLL。p> 另一种选择是使用COM接口,正如Ed S.所指出的,但我认为这并不能提供一种非常C#式的库感觉。这取决于你觉得最舒服的是什么,我假设C是.dll。可能会有帮助:.NET的可能副本支持C++。(至少是.NET标签的工具提示就提到了它)。好吧,我的问题更多的是关于如何使用源代码的最好方法……我不一定要创建一个C++ DLLI,不做一个C++ DLL,我会静态地把C++代码链接到你的C++/CLI项目。不对。您

在C++程序中不能使用C++ DLL,但在C++程序中可以使用C++/CLI DLL。p>
另一种选择是使用COM接口,正如Ed S.所指出的,但我认为这并不能提供一种非常C#式的库感觉。这取决于你觉得最舒服的是什么,我假设C是.dll。

可能会有帮助:.NET的可能副本支持C++。(至少是.NET标签的工具提示就提到了它)。好吧,我的问题更多的是关于如何使用源代码的最好方法……我不一定要创建一个C++ DLLI,不做一个C++ DLL,我会静态地把C++代码链接到你的C++/CLI项目。不对。您可以从C++项目直接引用本地DLL,如果它公开了COM接口。是使用源来创建C++ DLL和包装器,是从.NET中使用它的唯一方法吗?(希望这不是一个太愚蠢的问题)@EdS.COM似乎不是与库交互的最自然的方式,我觉得DLL对于C#开发人员来说更自然。@ColinD是的,那么P/Invoke呢?