通过模板定义一个Point类模板来保存顶点的坐标信息。Point坐标的类型是可变的,比如坐标类型可以是int,可以是float,可以是double等等。
时间: 2024-02-11 21:04:45 浏览: 26
基于c++构建的坐标点类,可以实现坐标的各种操作
好,这是一个Point类模板的基本定义:
```c++
template<typename T>
class Point {
private:
T x;
T y;
public:
Point(T x, T y) : x(x), y(y) {}
T getX() const { return x; }
T getY() const { return y; }
};
```
在这个模板中,`T` 是一个类型参数,可以是任何类型,包括 `int`、`float`、`double` 等等。Point类模板有两个私有的数据成员 `x` 和 `y`,分别表示点的横坐标和纵坐标。构造函数接受两个参数,分别是点的横坐标和纵坐标。`getX()` 和 `getY()` 分别返回点的横坐标和纵坐标。这个模板可以用来保存不同类型的坐标信息,比如:
```c++
Point<int> p1(1, 2);
cout << p1.getX() << ", " << p1.getY() << endl;
Point<float> p2(1.5f, 2.5f);
cout << p2.getX() << ", " << p2.getY() << endl;
Point<double> p3(1.5, 2.5);
cout << p3.getX() << ", " << p3.getY() << endl;
```
输出结果分别是:
```
1, 2
1.5, 2.5
1.5, 2.5
```
阅读全文