永发信息网

据说新发布的VS2010 Beta2中,引入了4个重要的C++新特性。号称C++0x的“四大天王”。这些新特性是什么呢?

答案:4  悬赏:40  手机版
解决时间 2021-04-21 15:57
据说新发布的VS2010 Beta2中,引入了4个重要的C++新特性。号称C++0x的“四大天王”。这些新特性是什么呢?
最佳答案

新特性之一:Lambda表达式.


很多编程编程语言都支持匿名函数(anonymous function)。所谓匿名函数,就是这个函数只有函数体,而没有函数名。Lambda表达式就是实现匿名函数的一种编程技巧,它为编写匿名函数提供了简明的函数式的句法。同样是Visual Studio中的开发语言,Visual Basic和Visual C#早就实现了对Lambda表达式的支持,终于Visual C++这次也不甘落后,在Visual Studio 2010中添加了对Lambda表达式的支持。



新特性之二:静态断言static_assert


在新的C++标准C++0x中,加入了对静态断言的支持,引入了新的关键字static_assert来表示静态断言。使用静态断言,我们可以在程序的编译时期检测一些条件是否成立,这个特性在调试模板函数的模板参数时特别有用。在编译的时候,模板函数实例化,这时我们就可以使用静态断言去测试模板函数的参数是否按照我们的设计拥有合适的值。


此外,静态断言还带来很多其他的优势。例如静态断言在编译时进行处理,不会产生任何运行时刻空间和时间上的开销,这就使得它比assert宏具有更好的效率。另外比较重要的一个特性是如果断言失败,它会产生有意义且充分的诊断信息,帮助程序员快速解决问题。



新特性之三:auto关键字


在C++0x中,auto关键字的意义发生了改变。从Visual C++ 2010开始,auto关键字将用于指引编译器根据变量的初始值来决定变量的数据类型。换句话说,我们可以把auto当成一种新的数据类型,它可以“从初始化器(initialize)中推导出所代表的变量的真正类型”。这种对auto关键字的使用方式可以大大消除当前替代方式所导致的冗长和易出错的代码。



新特性之四:右值引用


作为最重要的一项语言特性,右值引用(rvalue references)被引入到 C++0x中。我们可以通过操作符“&&”来声明一个右值引用,原先在C++中使用“&”操作符声明的引用现在被称为左值引用。 左值引用和右值引用的表现行为基本一致,它们唯一的差别就是右值引用可以绑定到一个临时对象(右值)上,而左值引用不可以。


具体的发布和下载信息大家可以到官网上查查。


全部回答

特性上面叙述的还是蛮清晰的。Beat2已经有官网发布了,大家可以自己下载然后试用一下。具体的自己去官网查查吧。这个是官网地址

http://www.microsoft.com/visualstudio/zh-cn/products/2010/default.mspx,可以到这里下载。

1、右值引用 2、lambda表达式 3、static_assert 4、auto变量

1:自定义开始页

2:多显示器支持

3: C++ IDE的增强。

4:并行运算。

5、F#语言的支持。

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
1992年正月初十是1992年的几月几号?
怎么弄装备啊
中国建设银行ATM(南昌路)这个地址在什么地方
我上个月十**来的月经,二十七号开始同房,结
PSP的游戏下载后放在哪
我打别人电话,可语音提示说此号码已过期,我
谁有好看的现代校园电影?
保利花园(一期)停车场地址在哪,我要去那里办
求悲伤的旋律,纯音乐!
回家无聊怎么办
什么样的人比较可靠?
丝路英雄到丞相要多少声望
为什么会有日食发生
从成都的茶店子公交站到大石东路怎么坐车
卡尔丹陶瓷地址在哪,我要去那里办事
推荐资讯
贪睡怎么解决
一般上来说是女孩子对男孩子表白好还是相反
076冒险岛乱马发型
拔火罐的好处
杰迷们,有口号吗?身为杰迷,一定要把全部告
歌词里面有英语是什么··路易路易路易··
QQ炫舞紫钻有活动可以获得吗?
湖北农商银行宣布标语,手游侠盗猎车手罪恶都
为什么 我下的QQ炫舞会这样啊 有解决的方法吗
怎样才能有孩子?
麻烦推荐本大学高等数学参考书
山外山农贸市场地址在哪,我要去那里办事
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?