Ich habe den Code folgendedestructor und unique_ptr
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;
}
Es lässt sich nicht kompilieren (gcc 4.7), es sei denn ich die destructor Kommentar aus. Eigentlich brauche ich diesen Destruktor nicht wirklich in meinem Code, ich wollte ihn nur zum Debuggen verwenden.
Allerdings verstehe ich nicht was passiert und ich fürchte daher, dass ich etwas falsch gemacht habe. Was passiert hier ?
Bei der Frage, warum etwas nicht kompiliert wird, ist es immer hilfreich, die Fehlermeldung hinzuzufügen. – NPE
@ user2183861 nein, es wird dort nicht beantwortet. Die Frage ganz anders –