C++;初始化样式 在阅读一本书的同时,我发现C++提供了各种初始化风格。其中很少有:- //1 double d1 {2.3}; //2 double d3 = {2.4};

C++;初始化样式 在阅读一本书的同时,我发现C++提供了各种初始化风格。其中很少有:- //1 double d1 {2.3}; //2 double d3 = {2.4};,c++,visual-c++,initialization,C++,Visual C++,Initialization,所以当我们使用大括号时,'='是可选的。所以我尝试了一下,令人惊讶的是,第二种方法运行良好,而第一种方法却导致了错误。 我正在使用Visual Studio 2010。有人能帮我吗?< /P> < P> C++ 11引入了一些新的C++构造,上面的“支撑”案例被称为统一初始化。这个特性没有完全通过Visual C++实现,直到VS 2013。 你应该看得和照片一样清楚 VS 2010只实现了一些C++0x草稿功能,例如nullptr,static\u assert,override/final,

所以当我们使用大括号时,'='是可选的。所以我尝试了一下,令人惊讶的是,第二种方法运行良好,而第一种方法却导致了错误。
我正在使用Visual Studio 2010。有人能帮我吗?< /P> < P> C++ 11引入了一些新的C++构造,上面的“支撑”案例被称为统一初始化。这个特性没有完全通过Visual C++实现,直到VS 2013。 你应该看得和照片一样清楚

VS 2010只实现了一些C++0x草稿功能,例如
nullptr
static\u assert
override
/
final
decltype
,新的
auto
,以及lambda表达式和r值引用(也称为move构造函数和运算符)的首次实现。它与C++11完全不同。VS 2015 Update 3或VS 2017是C++11/C++14编码的更好选择


升级您的IDE。Visual studio花了一段时间才符合C++11标准(这就是这个初始化语法出现的地方)。@StoryTeller我想你不会期望VS 2010符合C++11:)是的,它已经远远超过了它的销售日期。@PaulSanders-VS no。但是标准在发布前几个月就已经定稿(草案也可以公开获得)。令人惊讶的是,Clang和GCC经常设法展望未来。@StoryTeller希望我能。而微软似乎确实是如此。@PaulSanders-这肯定会让这个职业变得更容易。我希望看到有洞察力的开发人员的需求发生变化;)