Visual Studio 2010 C++的未来:0x 的新特
美国AT&T贝尔实验室的本贾尼?斯特劳斯特卢普(Bjarne Stroustrup)博士在20世纪80年代初期发明并实现了C++。随后,在面向对象语言迅速发展的时代背景下,C++以其面向对象的语言特性同时对 C语言的良好兼容,并且凭借着接近C语言的效率,C++语言在工业界使用的开发语言中占据了相当大的份额。在以后的发展中,C++不断引入新的内容,标准模板库(STL)和后来的Boost等程序库的出现,泛型程序设计的流行,使得C++牢牢占据了TIOBE编程语言排行榜前三的位置,成为业界最流行的编程语言。
但是,随着硬件技术的不断发展以及Java,C#等新型语言的不断涌现,C++的发展受到了很大的冲击,在业界的应用范围不断萎缩。就我们要介绍的 Visual Studio而言,C++曾经是Visual Studio 6.0中的首席语言,但是在后继版本的Visual Studio中,C++的地位不断下滑,被后来居上的C#抢了风头。很多钟情于C++的程序员不仅发出这样的感叹:“C++老矣,尚能编否?”
在刚刚发布的2008年12月TIOBE编程语言排行榜中,虽然C++仍旧以微弱的优势位列三甲。但是它于第四名PHP和第五名Visual Basic之间不断缩小的差距,不得不让人担心C++这昔日的状元,是否会终有一日位置不保,迭出三甲之外。
Position Dec 2008 |
Delta in Position |
Programming Language |
Ratings Dec 2008 |
Delta Dec 2007 |
1 |
|
19.367% |
-0.68% |
2 |
|
16.163% |
+2.99% |
3 |
|
10.893% |
+3.02% |
4 |
|
9.479% |
+1.09% |
5 |
|
9.478% |
-0.74% |
6 |
|
4.643% |
+0.65% |
7 |
|
4.567% |
-0.13% |
8 |
|
3.603% |
-0.78% |
9 |
|
3.062% |
+0.33% |
10 |
|
3.055% |
+0.38% |
表1 TIOBE编程语言排行榜
另外,从各种开发语言最近几年的发展趋势来看,C++近年的发展也不尽如人意。C++所擅长的开发领域不断被其他语言蚕食,所占比例不断缩小。

图1 编程语言大盘指数,C++不断下挫
真是“屋漏偏逢连夜雨”,回到我们所关注的Visual Studio中,C++的境遇也是每况愈下。在Visual Sutton 6.0中,C++作为其中的首席语言,曾经风光无限。但自从微软推出.NET平台后,Visual Studio首席语言的头衔就被C#夺去。在Visual Studio所支持的各种编程语言中,C++就像被打入了冷宫。从Visual Studio 6.0到最新的Visual Studio 2008,其间经过了多次版本更迭,Visual C#不断推陈出新,就连昔日受到程序员们鄙视的Visual Basic都有很多新的特性推出,但是Visual C++每次都是几个不咸不淡的小更新,没有革命性的变化。在Visual Studio所支持的各种语言中,越来越觉得Visual C++是后妈生的:
- MSBuild不能很好地支持Visual C++项目
- C++语言本身没有大的改进,新的标准没有出现
- 从Visual Studio .net 到Visual Studio 2008,很少有关于Visual C++的更新和改进
- Visual C++的类图不能编辑,无法动态生成代码
- 可怜的Visual C++ Feature Pack居然要通过SP来发布,Visual Studio发布的时候都不等等它
- IDE很多新的功能只能在Visual C#和Visual Basic中实现,例如Visual C++项目不支持“导出模板”等
- MSDN中的示例代码很多都是Visual C#的,很少有Visual C++的示例代码
作为Visual C++程序员,大家心里都很憋屈!大家都在问,Visual C++的前途在哪里?坚持C++还有没有意义?
在Visual Studio 2010中我们找到了答案,找到了C++的未来:C++王者归来!
虽然在C++的发展历程中经历了上述小小的波折,但是我们应当看到,世界上还有无数的C++代码在稳定地运行着,这些代码还需要维护,需要升级。另外,C++在某些领域还是具有不可替代的优势,无数基于C++的新项目正在进行着。微软也逐渐意识到了这一点,开始不断增强Visual Studio对C++的支持力度。在这次的Visual Studio 2010 CTP中,无论是从C++语言本身还是从IDE方面,都给我们带来了很多期盼已久的新特性。花开两朵,各表一枝。我们这里按下Visual Studio 2010在IDE方面的增强不表,单说它对即将到来的C++新标准C++0x的支持。
C++的新标准C++0x虽然还没有正式发布,但是已经进入了feature freeze的阶段,很多人都在猜测C++0x中的x到底是9还是10,从目前的情况来看,9是最大的可能了。Visual Studio 2010作为下一代开发工具,当然不会错过对新的C++标准C++0x的支持。除了随着之前发布的Visual C++ Feature Pack而引入的TR1包含的部分特性外,在新的Visual Studio 2010中,还引入了4个重要的C++新特性。号称C++0x的“四大天王”。这些新特性的引入,必将给C++注入新的活力。
出处:蓝色理想
责任编辑:bluehearts
上一页 下一页 VS 2010 C++的未来:0x 的新特性 [2]
◎进入论坛计算机技术版块参加讨论
|