我听说微软会把重点放在C#而不是C ++ for .NET平台上。我可以看到这是正确的迹象,因为GUI设计器可用于C#而不是C ++。
所以我想知道.NET中的C ++是否正在消亡,以及将来它是否会继续成为C#的第二位。
答案 0 :(得分:23)
如果您在应用程序开发中瞄准.NET框架,那么与C#相比,C ++ / CLI是二等公民。 C#专门设计为.NET框架的 语言,同时C ++ / CLI扩展允许开发人员桥接本机代码和托管代码。
但是,不要将C ++与C ++ / CLI混淆(C ++ .NET也是一样的......)。 C ++在内核,游戏,高性能和服务器应用程序(例如SQL服务器)等领域都很活跃,所有这些都不太可能改变。另一方面,大多数.NET'GUI stuff'都不会使用C ++。
答案 1 :(得分:7)
托管C ++永远不会成为MS认为的那样。 C#可以做(几乎)相同的事情,具有更直观和用户友好的语法。
除此之外,C ++ / CLI将不会长时间不受支持,因为它是在.NET程序集和本机C ++程序集之间创建互操作的简便方法。这就是它所使用的所有内容(我确信有0.001%的C ++ / CLI开发人员不同意:P)。
答案 2 :(得分:6)
C ++ / CLI就是Microsoft将本机C ++开发人员引入.NET的方式。它就像是原生C ++和C#之间的中间层,但我很确定开发人员更喜欢选择本机C ++或C#。
微软不会让C ++ / CLI死掉,至少在不久的将来,但如果没有社区支持,C ++ / CLI将无法发展。
在这一代人中,没有成长意味着接近死亡。
答案 3 :(得分:5)
我很害怕。
原因不是C#(它没有带来任何特殊的东西,虽然它是一种新语言,它不会引领新的语言功能,只是复制其他功能 - 泛型)。
这主要是因为MS首次尝试为.NET平台启用C ++ - 托管C ++ - 是一场灾难。 在此之后,他们聘请了Herb Sutter,C ++大师,这使得管理C ++替代调用C ++ / CLI做得非常出色。 为什么以及多少C ++ / CLI设计优于Managed C ++设计,您可以通过阅读Herb编写的{{3}}来了解。
顺便说一句,Herb使vc编译器成为Windows上最好的符合标准的编译器之一,在标准一致性方面是多年来最差的编译器。
答案 4 :(得分:2)
没有。它诞生了。它一直被视为没有活力路线图的二等奖。
答案 5 :(得分:1)
我认为是的,它已经死了,实际上它已经死了;),因为有很多人使用它,他们使用c ++或c#。 见this
答案 6 :(得分:0)
我认为它不一定会消失,但使用它的原因几乎总是归结为你是否需要它带来的性能优势。如果C#能够以90%的C ++效率做同样的事情,那真的不够好吗?