¿Cómo hago una clase asignable a primitivas? O, ¿cómo hago una clase escalar?
e preguntaba si es posible hacer que mi
class Time
{
public:
Time();
explicit
Time(
const double& d);
Time&
operator=(
const Time& time);
Time&
operator=(
const double& d);
};
asignable a la primitiva doble?
Estoy usando Time como IV mucho y necesito hacer muchas operaciones escalares en él, por lo que necesita "mezclarse" con DV que generalmente son dobles normales. Agregar un segundo operador de asignación hizo el truco al revés.
Sin embargo, muchas operaciones aún no son posibles con esto. He estado escribiendo operadores fuera de la clase Time para permitir la suma, resta, multiplicación y división entre Time y double. Pero como los operadores de asignación no están permitidos fuera de una clase, no puedo superar este último error:
Error 1 error C2440: 'initializing' : cannot convert from 'double' to 'Time' linearfit.cpp 67
¿Alguien tiene alguna experiencia con esto?
¡Gracias