首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有gcc标准库的icpc C++11

带有gcc标准库的icpc C++11
EN

Stack Overflow用户
提问于 2012-02-15 02:49:32
回答 2查看 3.1K关注 0票数 3

我使用icpc (非可选),并且我使用-std=c++0x编译,所以我可以使用lambas。

然而,当我这样做的时候,它会用一个支持另一个不支持的特性来创建与gcc标准类库的havok。

我试着定义

代码语言:javascript
复制
__GXX_EXPERIMENTAL_CXX0X__

但这并不管用。

因此,理想情况下,我所要求的是能够在C++03标准库中使用c++0x语言特性。

gcc 4.6

icc 12.1]

编辑错误示例:

代码语言:javascript
复制
/usr/include/c++/4.6.2/type_traits(74): error: identifier "constexpr" is undefined
    static constexpr _Tp                  value = __v;
           ^

/usr/include/c++/4.6.2/type_traits(74): error: expected a ";"
        static constexpr _Tp                  value = __v;
                                          ^

/usr/include/c++/4.6.2/type_traits(75): error: member "std::integral_constant<_Tp,      __v>::_Tp" is not a type name
    typedef _Tp                           value_type;
            ^

/usr/include/c++/4.6.2/type_traits(76): error: member "std::integral_constant<_Tp,     __v>::_Tp" is not a type name
        typedef integral_constant<_Tp, __v>   type;
                              ^

 /usr/include/c++/4.6.2/type_traits(77): error: identifier "constexpr" is undefined  
         constexpr operator value_type() { return value; }
         ^

 /usr/include/c++/4.6.2/type_traits(87): error: identifier "constexpr" is undefined
      constexpr _Tp integral_constant<_Tp, __v>::value;
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-15 17:16:55

这些错误显然指向C++11代码,所以听起来像是想防止编译器看到其中的任何错误,比如使用-U__GXX_EXPERIMENTAL_CXX0X__ (相当于GCC选项)。

但是,如果ICC在-std=c++0x下为您定义了这个库,那么您应该找出您应该使用的库的版本(或者在您的本地ICC安装中查找库)。还不能确定C++03库是否足以编译C++11代码。

票数 2
EN

Stack Overflow用户

发布于 2012-02-15 03:49:17

icpc只在这种情况下发出警告。不要把注意力放在这件事上。所有的东西都会被编译。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9282461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档