4.定义一个点类CPoint,定义一个线段类CLine,计算线段长度。使用类的组合(对象成员)实现,简单容易理解的编程
时间: 2024-02-21 20:57:44 浏览: 26
好的,这里我给出一个更加简单容易理解的编程示例。
首先,我们定义一个点类CPoint,包含点的横纵坐标属性。
```cpp
class CPoint {
public:
CPoint(double x, double y) : m_x(x), m_y(y) {}
double getX() const { return m_x; }
double getY() const { return m_y; }
private:
double m_x;
double m_y;
};
```
接着,我们定义一个线段类CLine,包含起点和终点两个点对象,以及计算线段长度的方法。
```cpp
#include <cmath>
class CLine {
public:
CLine(const CPoint& start, const CPoint& end) : m_start(start), m_end(end) {}
double getLength() const {
double dx = m_start.getX() - m_end.getX();
double dy = m_start.getY() - m_end.getY();
return std::sqrt(dx * dx + dy * dy);
}
private:
CPoint m_start;
CPoint m_end;
};
```
最后,我们可以使用上述类来计算线段长度。
```cpp
int main() {
CPoint start(1.0, 2.0);
CPoint end(4.0, 6.0);
CLine line(start, end);
std::cout << "Line length: " << line.getLength() << std::endl;
return 0;
}
```
输出结果为:
```
Line length: 5
```
这样,我们就通过类的组合实现了计算线段长度的功能,同时代码也更加简洁易懂。