以下程序使用g++ -std=c++0x test.cp
#include <memory>
int main(int argc, char** argv)
{
std::unique_ptr<int> thing;
return 0;
}
使用icpc -std=c++0x test.cpp
(版本:12.0.2),我收到以下错误:
test.cpp(4): error: namespace "std" has no member "unique_ptr"
std::unique_ptr<int> thing;
^
test.cpp(4): error: type name is not allowed
std::unique_ptr<int> thing;
^
test.cpp(4): error: identifier "thing" is undefined
std::unique_ptr<int> thing;
^
我的理解是icpc使用了引擎盖下的gcc标题,所以我不明白为什么一个人会工作而一个人不会。
我需要不同的版本吗?
我做了一些蠢货吗?
我通过编译器版本找到了C ++ 11功能的[图表],但我没有看到任何有关智能指针的内容。
我的icpc版本不接受标记-std=c++11