WPF应用程序在其核心上是托管应用程序?对吗?因此,我必须选择使用托管C++还是托管C#。我几年前尝试过托管C++,似乎还没有准备好应用于实际生产环境。我猜测Microsoft在托管C#方面投入了更多的精力。所以,使用托管C#似乎是两者之间最好的选择。这是事实吗?您在任何一种语言中使用WPF的经验是什么?谢谢。
WPF应用程序在其核心上是托管应用程序?对吗?因此,我必须选择使用托管C++还是托管C#。我几年前尝试过托管C++,似乎还没有准备好应用于实际生产环境。我猜测Microsoft在托管C#方面投入了更多的精力。所以,使用托管C#似乎是两者之间最好的选择。这是事实吗?您在任何一种语言中使用WPF的经验是什么?谢谢。
Managed C++已被C++/CLI所取代,而“managed C#”就是C#。
我强烈建议您在新项目中使用C#,只有在需要时才使用C++/CLI。 C#支持更好,拥有更大的用户基础,并且在Visual Studio 2010内使用更加容易。
此外,请记住C++和C++/CLI是两种不同的语言。对于我的第一个.Net项目,我选择了C++/CLI,因为我已经知道C++,但这是一个非常糟糕的想法:从C++到C++/CLI的学习曲线类似于从C++学习C#:不要掉进那个陷阱。
C++/CLI主要用于支持在非托管代码(即本地C/C ++)和托管代码之间编写交互层。对于“重量级”的工作,您应该绝对使用C#(或VisualBasic.NET)。
您可以使用托管 C++ 作为后端,但是经检查,VS(我使用的是 2010 Ultimate)没有内置 C++ WPF 应用程序模板 - 只有 C# 或 VB。
我相信如果您愿意,您可以强制它工作,但我建议您使用 C#。
C# 是最常用的编程语言,因此如果您遇到问题,C# 有更多的在线支持。C# 也得到了微软更好的支持。即使现在,它仍然是一个更完善的产品。如果您真的不在意选择哪种语言,我建议您选择 C#。
毫无疑问,C#(或VB/F#)是最好的选择。
当需要跨越托管世界和C++库时,C++/CLI非常出色。然而,由于将托管语言和非托管语言结合使用,复杂度更高,会出现一些微妙的问题。
C++/CLI的编译时间较长,特别是因为代码模板是按照C#编译器的工作方式而不是C++编译器的工作方式建模的。