Мне необходим тип данных с тремя полями float и при этом без переписывания операторов, то есть
class Vector{ float X,Y,Z; }
operator+(vector A, vector B){ A.X += B.X; A.Y += B.Y;... }
что бы потом спокойно писать
Vector a,b,c;
c = a + b;
а не
Vector a,b,c;
c.x = a.x + b.x;
c.y = a.y + b.y;
c.z = a.z + b.z;
как избежать подобного мне ведь ещё нужно вычитание, умножение. Можно ли наследовать класс float или операторы? и если нет, то правильно ли я делаю? есть ли ещё варианты? и как правильно оформить?