Я новичок в C++ и хотел бы знать, если это возможно, чтобы сделать что-то вроде этого:Возможно ли построить объект непосредственно в аргументах другого конструктора в C++?
Rectangle rect(Point(0, 0), 10, 10); // doesn't work
Идея заключается в том, что прямоугольник принимает объект точки, а также ширина и высота параметры. Конструкторы выглядеть следующим образом:
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;
};
я могу получить желаемый эффект, делая это:
Point point(0, 0);
Rectangle rect(point, 10, 10); // this works
, но я думаю, что было бы хорошо, если бы я мог создать экземпляр моей точки непосредственно в аргументах для нового прямоугольник. Если это возможно, сообщите мне! Благодаря!
сделать его 'константную Точку & point' – GeorgeAl
Take по значению и первому должно сработать. – tkausl
По какой-то причине я думал, что «точка» выходит за рамки. Я был неправ. – tkausl