学习C++;0x特性 什么是学习C++新的0x特性的好地方?我知道他们可能还没有完全敲定,但如果能抢先一步就好了。另外,目前哪些编译器支持它们?

学习C++;0x特性 什么是学习C++新的0x特性的好地方?我知道他们可能还没有完全敲定,但如果能抢先一步就好了。另外,目前哪些编译器支持它们?,c++,c++11,C++,C++11,您当然应该知道的是,的官方工作组网站。这包含了委员会的信息,因此它包含了正在开发的正式文件。但是,它不一定是了解各种C++0x建议思想背后的背景思想的最佳场所 另一个地方是新闻组;这通常会对可能的功能细节进行深奥的讨论。了解它的一个简单而有趣的方法是观看视频。另一个很好的来源是Bjarne Stroutstrup的,它涵盖了大部分新功能。这并不是关于语言功能,但您可能想看看。它是一种库规范,最有可能成为C++0x 有它的实际实现,因此您可以立即使用它(例如,Microsoft提供的)。对于VC+

您当然应该知道的是,的官方工作组网站。这包含了委员会的信息,因此它包含了正在开发的正式文件。但是,它不一定是了解各种C++0x建议思想背后的背景思想的最佳场所


另一个地方是新闻组;这通常会对可能的功能细节进行深奥的讨论。

了解它的一个简单而有趣的方法是观看视频。另一个很好的来源是Bjarne Stroutstrup的,它涵盖了大部分新功能。

这并不是关于语言功能,但您可能想看看。它是一种库规范,最有可能成为C++0x


有它的实际实现,因此您可以立即使用它(例如,Microsoft提供的)。对于VC++2010,这里列出了将要使用的内容

语言(其中一些在VC2008中已经作为语言扩展):

  • 兰博达斯
  • static\u断言
  • auto
    decltype
  • 右值引用(
    T&
  • nullptr
  • 外部模板
    (注意:不导出!)
  • long-long
  • 嵌套模板中的关闭
    之间不需要空格(例如
    向量
    是合法的)
图书馆:

  • /
    和其中的所有typedef(终于!)
  • std::unique_ptr
    std::shared_ptr
    std::weak_ptr
  • std::转发列表
  • std::tuple
    和相关事物(例如
    tie
    get
    …)
什么是而不是

  • 初始值设定项列表(奇怪的是,标题
    存在并包含相应的类型,但在beta 2中似乎没有语言支持)
  • 可变模板
  • constexpr
  • 对于,基于范围的
    (尽管每个
    的语言扩展
    ,基本相似,但仍然存在)
  • 统一初始化语法
    {}
  • 替代函数语法(模仿lambdas)
  • 构造函数委托
  • 同一行成员字段初始值设定项
  • [[override]]
    (但是
    override
    仍然是一种语言扩展)
  • =成员上的默认值
    =删除
  • enum类
  • 使用
    作为类型别名,模板
    使用
  • char16\u t
    char32\u t
    ,以及相应的字符串文本
  • 原始和用户定义的字符串文字
  • sizeof
    在没有对象实例的实例字段上
  • std::thread
    和朋友

有关编译器支持,您可以在此处查看:

编译器:

纸张
HP aCC
EDG eccp
gcc
英特尔C++
MSVC
IBM XLC++
Sun C++

C++ Builder 2009/10

一个链接的源码,会很棒的!涵盖语言功能。还有一系列的博客文章,尽管它们现在有些过时了(例如,它们声称没有
nullptr
支持,尽管它现在就在那里):至于图书馆,我找不到任何明确的文件来涵盖这一点。通过查看我的VS2010 beta 2安装中提供的内容,我编译了上面的列表。还请注意,上面的列表不包括TR1中存在的库功能,这些库功能只是从C++0x的
std::TR1::
移动到
std:
(VC2010在两个命名空间中都支持此类功能)。不是重复的,但您可以得到一些答案。这里既有指向草稿的链接,也有正在实现C++[0 | 1]x功能的编译器列表。部分重复:。它没有谈到编译器支持。