Witam, mam problem z przeładowaniem operatora,
klasa Klasa zawiera prywatne pole o nazwie a, metoda a() zwraca wartosc a.
Klasa Klasa::operator* (const double& x)
{
Klasa *p = new Klasa (this->a() * x);
return *p;
}
Załóżmy że tworzę obiekt klasy Klasa np: Klasa k(2) //konstruktor, pole o nazwie a = 2
i teraz pisząc polecenie np: 4k wywala błąd, natomiast pisząc 4.0k działa bez problemu.
Jak można to naprawić? Zaznaczam, że muszę podawać polecenie w postaci jak wyżej, tak samo operator* musi przyjmować argument typu double.
Z góry dziękuję za pomoc.