Der Konstruktor sollte die fertigen std::vector-Segmente zurückgeben.
Meine Frage ist einfach. Ist ein intelligenter Zeiger am Ende der Dereferenzierung erforderlich oder nicht?
Das Problem besteht darin, dass das Programm im ersten und zweiten Fall funktioniert. Ich weiß mit Sicherheit, dass der Link keine Dereferenzierungsoperation hat, da er sofort mit dem Wert funktioniert, aber mir wurde gesagt, dass hier eine Dereferenzierungsoperation erforderlich ist.
Code: Select all
Countour2D::Countour2D(std::vector & curves) {
segments.reserve(curves.size());
for (size_t i = 0; i < curves.size(); ++i) {
segments.push_back(std::make_unique(*curves[i]));
}
}
Mobile version