从函数返回对象
在C++语言中,函数可以返回各种类型的值,包括基础类型(如整型和浮点型)和自定义类型(如结构体和类)。对于自定义类型,可以利用类的构造函数来创建对象,然后将其返回。本文将重点介绍如何从函数中返回自定义类型的对象。
- 返回临时对象
最简单的方法是返回一个临时对象,该对象将在函数返回后被销毁。例如,假设有一个名为Point的类,表示平面上的一个点。我们可以编写一个函数,该函数接受两个整数参数,分别表示点的x和y坐标,然后返回一个Point对象:
class Point {
public:
Point(int x, int y) : x_(x), y_(y) {}
private:
int x_;
int y_;
};
Point create_point(int x, int y) {
return Point(x, y);
}
int main() {
Point p = create_point(1, 2);
return 0;
}
在这个例子中,create_point函数创建了一个Point对象,并且将其作为返回值返回。当该函数返回时,该对象将被销毁。在主函数中,我们将返回的对象赋值给p变量。由于Point类定