WPF应用程序的核心是托管应用程序吗? Right?所以,我必须选择使用托管C++还是托管C#。我在几年前对托管的C++进行了实验。它似乎还没有准备好黄金时段。我猜测微软已经把更多的精力投入托管的C#中,而不是托管的C++。所以,使用托管C#似乎是两者之间的最佳选择。是这样吗?你对WPF有什么经验?提前致谢。应该用C++/CLI还是C#编写WPF应用程序?
回答
托管C++已被C++/CLI取代,“托管C#”仅仅是C#。
我强烈建议您将C#用于新项目,并仅在需要时使用C++/CLI。 C#拥有更好的支持,拥有更大的用户群,并且更易于在Visual Studio 2010中工作。
此外,请记住,C++和C++/CLI是两种不同的语言。对于我的第一个.Net项目,我选择了C++/CLI,因为我已经知道C++了,这是一个非常糟糕的想法:从C++到C++/CLI的学习曲线类似于从C++学习C#:不要落入该陷阱。
就后端而言,它们都运行在CLR上,都能胜任。真的,它只是归结于你最舒服的。如果你不确定,试试两者。 使用任何感觉最有成效的东西。
编辑:
由于刚刚向我指出的是,它似乎是WPF模板(甚至可能是智能感知)的支持仅仅是不存在的C++。所以在这种情况下,我想我必须推荐C#。
C#是最常用的,所以如果遇到问题,还有更多的C#在线支持。 C#也有更好的微软支持。即使是现在,它总体上也只是一个更完整的产品。如果你真的不关心你自己,我会用C#去。
不正确。C++/CLI *是一个完美且精彩的产品,特别是C++ 0x规范和使用C++头文件模板库的能力。但它很少是工作的正确工具。 – 2010-08-12 12:27:26
我认为C++对于游戏来说比较好,你需要经常到达基本级别。 WPF正在尝试做出确切的对照; '远离绘画,让我为你做所有事情'。 C#更适合这个概念。 – 2010-08-13 00:08:22
您可以为后端使用托管C++,但在检查时,VS(我正在使用2010 Ultimate)没有任何C++ WPF应用程序的内置模板 - 只有C#或VB。
我相信你可能如果你想强制它工作,但我建议你使用C#。
C++/CLI只是真正支持在非托管代码(即本地C/C++)和托管代码之间编写互操作层。对于“繁重”,你绝对应该使用C#(或VisualBasic.NET)。
IMO毫无疑问C#(或VB/F#)。
当跨越托管世界和C++库的边界时,C++/CLI非常棒。复杂性较高,但微妙的问题来自于将一种托管语言和一种非托管语言相结合的事实。
尽管在C++/CLI中编译时间长,但特别是因为代码模板是在C#编译器的工作方式之后进行建模的,而不是C++编译器的工作方式。
- 1. 我应该继续使用Windows Forms还是WPF应用程序学习C#?
- 2. C#应用程序 - 我应该使用存储过程还是使用C#编程技术的ADO.NET?
- 3. 重写一个SQL/vb6应用程序 - 我应该使用nHibernate还是Linq
- 4. 应该在Scala Play中使用应用程序还是HomeController?
- 5. 我应该为我的应用程序使用AsyncTask还是IntentService?
- 6. 我应该用/ MD还是/ MT编译?
- 7. 我应该使用回调还是应该重写属性?
- 8. 在wpf桌面应用程序中脚本编写C#
- 9. 想编写C#应用程序脚本
- 10. C#WPF应用程序类
- 11. 我应该使用框架还是编写自己的MVC?
- 12. 我应该使用cronjob还是在php中编写脚本?
- 13. 同步提供程序应该是Android库还是应用程序?
- 14. 它是HTML5应用程序还是Android本机应用程序?
- 15. NHibernate应该为实体分配id还是应该由应用程序处理?
- 16. 我应该使用UIWebView还是Three20来编写新闻阅读器iPhone应用程序?
- 17. 我应该如何编写API 21(仅)应用程序?
- 18. 如何用C#中的参数编写应用程序启动应用程序?
- 19. 是否有可能在C#中为Android编写应用程序?
- 20. 可扩展WPF应用程序 - MEF,MAF还是简单加载?
- 21. WPF应用程序
- 22. 我应该使用C++还是脚本进行守护进程?
- 23. 编写应用程序离线工作(Web应用程序)
- 24. 在Spring-Hibernate Web应用程序中编写Java应用程序
- 25. 我应该使用Django的contrib应用程序还是构建自己的应用程序?
- 26. 我应该在C#程序中使用属性还是应该使用get/set访问器?
- 27. 我应该将所有函数写入实用程序类还是服务类?
- 28. 可以将HealthVault应用程序写入厚的Windows窗体应用程序,还是必须将它们编写为Web应用程序?
- 29. 用C或C++编写Android应用程序?
- 30. 我应该使用CruiseControl还是编写我自己的编译软件?
不是:Visual Studio具有支持使用C#(和VB.NET)进行WPF开发的IDE功能,但不支持C++/CLI。然后有这个:http://stackoverflow.com/questions/2681999/no-intellisense-for-c-cli-in-visual-studio-2010 – 2010-08-12 12:24:14
谢谢你把我的注意力。我没有意识到缺乏支持。 – nukefusion 2010-08-12 12:27:28