1. 设计点类 point,能够表示平面当中的任意点 (20分)\n\n(1)数据成员包括两点坐标(x,y)。\n\n(2)成员函数包括构造函数、析构函数、复制构造函数、求点的坐标的函数,打印点坐标的函数,
时间: 2023-05-31 13:17:55 浏览: 193
### 回答1:
好的,以下是用中文回复:
设计一个点类 point,用于表示平面上的任意点。(20分)
该类的数据成员包括两个坐标值 x 和 y。
该类的成员函数包括构造函数、析构函数、复制构造函数、获取点坐标的函数和打印点坐标的函数。
### 回答2:
设计一个“点类”Point,能够表示平面中的任意点。这个点类的数据成员包括两个坐标x和y,成员函数包括构造函数、析构函数、复制构造函数、求点坐标的函数和打印点坐标的函数。
在C++中,这个“点类”可以这样定义:
```c++
class Point {
private:
double x;
double y;
public:
Point();
Point(const Point& p);
Point(double x, double y);
~Point();
double getX() const;
double getY() const;
void setX(double x);
void setY(double y);
void print() const;
};
```
这个“点类”有两个私有数据成员,x和y,表示该点的坐标。构造函数包括无参构造函数、带参构造函数和复制构造函数。析构函数用于释放该对象占用的内存。
这些成员函数具体实现如下:
```c++
// 无参构造函数
Point::Point() {
x = 0.0;
y = 0.0;
}
// 带参构造函数
Point::Point(double x, double y) {
this->x = x;
this->y = y;
}
// 复制构造函数
Point::Point(const Point& p) {
this->x = p.x;
this->y = p.y;
}
// 析构函数
Point::~Point() {}
// 获取坐标 x
double Point::getX() const {
return x;
}
// 获取坐标 y
double Point::getY() const {
return y;
}
// 设置坐标 x
void Point::setX(double x) {
this->x = x;
}
// 设置坐标 y
void Point::setY(double y) {
this->y = y;
}
// 打印点坐标
void Point::print() const {
cout << "(" << x << ", " << y << ")" << endl;
}
```
因此,当我们创建一个点对象时,可以这样做:
```c++
Point p1; // 无参数点对象
Point p2(3, 4); // (3, 4)的点对象
Point p3 = p2; // 复制构造函数
```
我们可以通过getX()和getY()方法获取x和y坐标,setX()和setY()方法设置x和y坐标,print()方法打印点对象的坐标。
```c++
cout << p1.getX() << ", " << p1.getY() << endl; // 输出 (0, 0)
p2.print(); // 输出 (3, 4)
p3.setX(2); // p3的x坐标设为2
p3.print(); // 输出 (2, 4)
```
这就是一个简单的点类的实现。它可以是其他类的基础,比如线、圆等等。
### 回答3:
点类 Point 是一个能够表示平面上任何点的类,用于记录该点在二维坐标系上的位置。该类包括两个数据成员,分别代表点在 x 和 y 坐标轴上的值。
1. 数据成员:
point 类的数据成员有两个属性,分别为 x 和 y,分别表示点在 x 坐标轴和 y 坐标轴上的位置。二者均为浮点型。
2. 成员函数:
point 类的成员函数主要包括构造函数、析构函数、复制构造函数、求点的坐标的函数和打印点坐标函数。
① 构造函数
这是 point 类的构造函数,用于创建点对象。
```c++
Point(double x = 0, double y = 0);
```
该构造函数接受两个参数,分别代表点在 x 和 y 坐标轴上的位置。如果没有传递参数,则使用默认值 0。
例如:
```c++
Point p1(1.0, 2.0);
Point p2;
```
在上述代码中,p1 的 x 坐标为 1.0,y 坐标为 2.0,而 p2 的 x 和 y 坐标都为默认值 0。
② 析构函数
这是 point 类的析构函数,用于释放对象占用的内存资源。由于 point 类中的数据成员均为基本类型,故该函数可以为空函数。
```c++
~Point();
```
在对象销毁时,会自动调用该函数进行资源释放。
③ 复制构造函数
这是 point 类的复制构造函数,用于将已有的 point 对象拷贝到新的对象中。该函数与一般的拷贝构造函数类似。
```c++
Point(const Point& p);
```
在传递对象时,需要使用 const 关键字将对象编程为只读状态。
例如:
```c++
Point p1(1.0, 2.0);
Point p2(p1);
```
在上述代码中,先创建 p1 点对象,再将其拷贝到新的 p2 点对象中。
④ 求点坐标函数
这是 point 类的求点坐标函数,用于获取点对象的坐标信息。
```c++
double x();
double y();
```
该函数返回点在 x 和 y 坐标轴上的位置。
例如:
```c++
Point p1(1.0, 2.0);
double px = p1.x();
double py = p1.y();
```
在上述代码中,先创建 p1 点对象,再使用 x() 和 y() 方法获取该点在 x 和 y 坐标轴上的位置。
⑤ 打印点坐标函数
这是 point 类的打印点坐标函数,用于输出点对象的坐标信息。
```c++
void print();
```
该函数将点对象在控制台上输出。
例如:
```c++
Point p1(1.0, 2.0);
p1.print();
```
在上述代码中,先创建 p1 点对象,再调用 print() 方法将该点在控制台上输出。
综上,点类 point 包括数据成员 x 和 y,以及构造函数、析构函数、复制构造函数、求点坐标函数和打印点坐标函数等成员函数。可以表示平面上的任何点。
阅读全文