回答
我们没有用于C++/CLI的编译器,它对于非常小的用户群来说是一个非常大的工作。还要考虑到C++/CLI规范本质上是有缺陷的并且是不可移植的,所以能够编译它在一般情况下不会有太大帮助。
可以编译使用MS .NET编译器和在单用这些限制运行:
与任何系统上的单声道运行,如果C++/CLI应用程序是纯管理(但然后,为什么要使用这样的一个丑陋的语言,而不是C#?)
在其他情况下在Windows上使用mono运行(C++/CLI应用程序通常不可移植并包含本机代码,因此它们只能在Windows上运行,并且对单声道的主要目标是在Linux上运行托管程序)
请注意,MS本身最终会放弃C++/CLI,所以不要投入太多,并切换到C#。
go here并在“缺少语言”下查找。但只是因为你不能编译并不意味着你不能运行。您可以使用框架sdk编译您的C++代码并尝试使用mono运行它。无论如何值得尝试。
不,C++/CLI是在Mono下的not supported,可能永远不会,尽管使用MS编译器生成纯粹的IL将允许完全托管的代码在Mono下运行。
作为一种互操作语言,C++/CLI的存在使得调用非托管代码成为可能。另一种替代方法是使用P/Invoke,即使有问题,它也是well-documented。
在Mono 2.4上,您可以运行在C++/CLI下编译的C++/CLI应用程序。带有/ clr:安全开关的Visual Studio 2008。
Mono最近在CXXI的C++互操作性方面取得了一些很大的进展。
From this posting,短故事是,新CXXI技术允许C#/ NET开发者:
- 轻松消耗从C#或任何其他现有的C++类。NET 语言
- 实例化C++从C#
- 调用C++用C从C#代码方法++的类的对象
- 调用C++内联从C#代码的方法(前提是您的库编译-fkeep内联函数或您提供替代 库)
- 子类C++从与C#方法C#
- 覆盖C++方法的类
- 揭露的C++类或混合的C++/C#类的实例于C#代码和C++,好像他们是本机代码。
CXXI是谷歌夏季法典的两个夏季工作的结果,旨在提高Mono与C++语言的互操作性。
这是一个非常古老的问题,几年后会有非常有趣的答案。
截至目前tritao/CppSharp是mono/cxxi最积极开发叉子将其移回mono库在2013年,因为正在积极地开发,目前树可以在mono/CppSharp
他们的自述是here和被发现为 '发生器' 的特点是:
- 多个后端:C++/CLI和C#P /调用
- 多的ABI:安腾,MS,ARM,iOS和iOS64
- 个多平台:Windows,Mac OS X和Linux
- 多重继承的支持
- 通过用户易于扩展的语义传递
- 为STL工作进行中支持
- 虚拟表覆盖的支持(仅适用于C++/CLI)
- 强类型的自定义API和类型映射
它还配备了很多很酷的东西,AST和解析器。
- 1. .Net Mono项目是否支持iPad?
- 2. Xamarin的Android for Mono是否支持与Mono相同的.NET库?
- 3. .net运行时编译器是否支持C#3.0?
- 4. MacRuby是否支持静态编译?
- 5. GNU Java编译器是否支持JNA?
- 6. 公共服务定位器是否支持Mono .NET?
- 7. Mono是否支持64位Windows?
- 8. SQLite的dotConnect是否支持Mono?
- 9. .net nuke是否支持ajax?
- 10. protobuf-net是否支持HybridDictionary?
- 11. Mono C#编译器在编译时是否执行任何并行循环?
- 12. Node.js是否支持并行?
- 13. Mono支持XAML吗?
- 14. ios编译ffmpeg不支持ac3支持
- 15. .NET Micro Framework是否支持CAN总线?
- 16. .NET是否支持Windows Eventing 6.0?
- 17. .Net Core是否支持反射?
- 18. SharePoint 2003是否支持.NET 3.5框架?
- 19. SketchUp C SDK是否支持.NET CLI?
- 20. Azure WebJobs是否支持.Net Framework版本?
- 21. protobuf-net是否支持[DataMember(Order = 0)]?
- 22. Weblogic.Messaging.dll .NET客户端是否支持T3S?
- 23. .Net是否支持curried仿制药?
- 24. Windows Server 2008是否支持.net 1.1
- 25. Visual Studio Express是否支持.NET核心
- 26. .net BinaryFormatter是否支持继承?
- 27. SAP Connector 3.0是否支持.NET Framework 3.5?
- 28. .NET Regex是否支持全局匹配?
- 29. 谷歌翻译是否支持CORS?
- 30. F#编译器是否支持与C#编译器相同的foreach优化
“MS本身最终会丢弃C++/CLI” 你能解释一下为什么你这么想吗?这对我来说似乎不太可能。 – 2008-10-11 12:43:21
托管C++已经不受支持并停止使用,不需要很长时间就可以这样做。现在去计算一两年前与C++/CLI相关的新闻,博客文章,公告。将点连接。 – lupus 2008-10-12 08:59:57
计算与C++(来自Microsoft)相关的新闻项目,博客文章,公告,并与C#,ASP.NET等进行比较。这是否意味着MS将删除C++? – 2008-10-12 23:23:34