私は次のコードを持っています
class A {
public:
A(){}
~A(){}
private:
std::vector<std::unique_ptr<double> > x;
};
A f() {
A a;
return a;
}
int main() {
A a=f();
return 0;
}
デストラクタをコメントアウトしない限り、コンパイルされません(gcc 4.7)。実際、コードにこのデストラクタは必要ありません。デバッグ目的で使用したかっただけです。
しかし、何が起こっているのかわからないので、何か間違ったことをしたのではないかと心配しています。ここで何が起きてるの ?