C++11 gcc 4.3.4是否支持唯一的ptr?

C++11 gcc 4.3.4是否支持唯一的ptr?,c++11,g++,unique-ptr,C++11,G++,Unique Ptr,我一直在尝试在本地CygWin安装中使用g++编译器实现PIMPL,我开始认为这可能是因为我正在运行g++4.3.4,因为它的C++11支持还不够完美 使用基线代码(来自MSDN): 如果我替换-std=gnu++0x,我也会得到这个结果 事实上,当我试图编译哪怕是最简单的文件时,从另一个如此简单的答案中得出: #include <iostream> #include <memory> int main() { std::unique_ptr<int>

我一直在尝试在本地CygWin安装中使用g++编译器实现PIMPL,我开始认为这可能是因为我正在运行g++4.3.4,因为它的C++11支持还不够完美

使用基线代码(来自MSDN):

如果我替换
-std=gnu++0x
,我也会得到这个结果

事实上,当我试图编译哪怕是最简单的文件时,从另一个如此简单的答案中得出:

#include <iostream>
#include <memory>
int main() {
    std::unique_ptr<int> up( new int( 30 ) );
}
#包括
#包括
int main(){
标准::唯一性(新的整数(30));
}
它抱怨
unique\u ptr
不在
std
命名空间中

没有
unique\u ptr
的条目,但从网络上看,它已经存在了很长一段时间,至少从4.4开始

所以我的问题是,首先,在什么版本的
gcc
中添加了对
unique\u ptr
的支持


第二,我是否只是在代码中犯了一些愚蠢的错误,用了错误的方法?

在第一个示例中,
unique\u ptr
上缺少
std:
限定符。第二个例子

>代码> UnQuyGPPT/<代码>在GCC标准C++库中未在4.4:

之前 <>改进了对即将到来的ISOC++标准C+++0x的实验支持,包括:

  • 唯一性\u ptr
    添加、异常传播,以及对
    中新字符类型的支持

在第一个示例中,
unique\u ptr
上缺少
std::
限定符。第二个例子

>代码> UnQuyGPPT/<代码>在GCC标准C++库中未在4.4:

之前 <>改进了对即将到来的ISOC++标准C+++0x的实验支持,包括:

  • 唯一性\u ptr
    添加、异常传播,以及对
    中新字符类型的支持
In file included from my_class.cpp:1:
my_class.h:8: error: ISO C++ forbids declaration of 'unique_ptr' with no type
my_class.h:8: error: invalid use of '::'
my_class.h:8: error: expected ';' before '<' token
my_class.cpp: In constructor 'my_class::my_class()':
my_class.cpp:5: error: class 'my_class' does not have any field named 'pimpl'
#include <iostream>
#include <memory>
int main() {
    std::unique_ptr<int> up( new int( 30 ) );
}