WPF应用程序的核心是托管应用程序? Right?因此,我必须在使用托管C ++或托管C#之间进行选择。几年前我用托管C ++进行过实验。它似乎还没有为黄金时段做好准备。我猜测微软在托管C#方面付出了更多努力,而不是托管C ++。因此,似乎使用托管C#是两者之间的最佳选择。是这样的吗?您使用任何一种语言都可以获得WPF的经验吗?提前谢谢。
答案 0 :(得分:14)
托管C ++已被C ++ / CLI取代,“托管C#”只是C#。
我强烈建议您将C#用于新项目,并仅在需要时使用C ++ / CLI。 C#具有更好的支持,更大的用户群,并且更容易在Visual Studio 2010中使用。
此外,请记住,C ++和C ++ / CLI是两种不同的语言。对于我的第一个.Net项目,我选择了C ++ / CLI,因为我已经了解C ++,这是一个非常糟糕的主意:从C ++到C ++ / CLI的学习曲线类似于从C ++学习C#:不要陷入那个陷阱
答案 1 :(得分:4)
C ++ / CLI仅用于支持在非托管代码(即本机C / C ++)和托管代码之间编写互操作层。对于“繁重的工作”,你绝对应该使用C#(或VisualBasic.NET)。
答案 2 :(得分:2)
您可以在后端使用托管C ++,但在检查时,VS(我正在使用2010 Ultimate)没有任何用于C ++ WPF应用程序的内置模板 - 只有C#或VB。
如果您愿意,我确定您可以强制它运行,但我建议您使用C#。
答案 3 :(得分:1)
就后端而言,它们都运行在CLR上并且都能胜任这项工作。真的,这取决于你最舒服的东西。如果您不确定,请尝试两者。 使用最有效率的东西。
修改强>:
正如刚刚向我指出的那样,似乎对WPF模板(甚至可能是智能感知)的支持并不适用于C ++。所以在这种情况下,我想我必须推荐C#。
答案 4 :(得分:1)
C#是最常用的,所以如果遇到问题,C#的在线支持会更多。 C#也得到了微软更好的支持。即使是现在,它总体上只是一个更完整的产品。如果你真的不在乎自己,我会选择C#。
答案 5 :(得分:1)
IMO毫无疑问是C#(或VB / F#)。
跨越托管世界和c ++库的边界时,C ++ / CLI非常棒。虽然由于管理语言和非托管语言相结合而产生微妙问题,但复杂性更高。
编译时间虽然在C ++ / CLI中也比较长,特别是因为代码模板是根据C#编译器如何工作而不是C ++编译器的工作方式建模的。