Ich bin sehr neu in C++ und würde gerne wissen, ob es möglich ist, so etwas zu tun:Ist es möglich, ein Objekt direkt in den Argumenten eines anderen Konstruktors in C++ zu konstruieren?
Rectangle rect(Point(0, 0), 10, 10); // doesn't work
Die Idee ist, dass Rechteck ein Point-Objekt sowie Breite und Höhe Parameter nimmt. Die Konstrukteure sehen wie folgt aus:
Rectangle::Rectangle(Point & point, double width, double height) {
this->point = point;
this->width = width;
this->height = height;
};
Point::Point(double x, double y) {
this->x = x;
this->y = y;
};
ich, indem Sie diese den gewünschten Effekt zu erreichen:
Point point(0, 0);
Rectangle rect(point, 10, 10); // this works
aber ich denke, es wäre schön, wenn ich mein Punkt direkt für eine neue in den Argumenten instanziiert könnte Rechteck. Wenn dies möglich ist, lass es mich wissen! Vielen Dank!
macht es ein 'const Point & Point' – GeorgeAl
Nehmen von Wert und dem ersten sollte arbeiten. – tkausl
Aus irgendeinem Grund dachte ich, "Punkt" geht aus dem Rahmen. Ich habe mich geirrt. – tkausl