我有一个矢量类:
template <typename T>
class Vector2 {
public:
T x, y;
Vector2(T x, T, y) : x{x}, y{y} {}
}
我想根据上下文获得不同的访问器:
Vector2<float, x, y> xy;
xy.x = 42;
Vector2<float, u, v> uv;
uv.u = 42;
这在 C++ 中可能吗?更具体地说,这在 C++03 中可能吗?
我在 C++ 中为 DC/DC 电压转换器开发嵌入式固件。我有不同的值,如电压、电流……一些转换可以将三相电流 (u、v、w) 转换为两相静态 (a、b) 和两相旋转坐标系 (d、q)。具有以下类型会更具可读性:
using CurrentDQ = Vector2<float, d, q>
using CurrentAB = Vector2<float, a, b>
using Current3 = Vector<float, u, v, w>