Wątpliwości co do metody w podręczniku do programowania.

0

Przerabiam książkę "Szkoła Programowania C++" i zdziwiła mnie jedna rzecz w kodzie. Otóż mamy kod:

class BaseEllipse
{
private:
   double x;
   double y;
   ...
public:
   BaseEllipse(double x0 = 0, double y0=0) : x(x0), y(y0){}
   void Move (int nx, ny) { x=nx; y= ny;}
   virtual double Area() const = 0;
   ...
};

I moje pytanie brzmi: Czy metoda Move jest poprawna? Bo mi się wydawało, że w C++ każdy argument wywołujący funkcję musi mieć określony typ, a do tego w tym przypadku int użyte być nie może.

Czyli w kodzie uważam, że powinno być tak:

void Move (double nx, double ny);

Czy mam rację, czy czegoś nie rozumiem (i jeśli tak to byłbym wdzięczny, gdyby ktoś mi to wytłumaczył :))? Nie miałbym wątpliwości, gdyby to było jednorazowe, ale to się w książce powtarza z 3 razy, a w erracie nie ma mowy o tej stronie.

1

Tak, masz racje. Niektórzy autorzy są tak pewni siebie że nie kwapią się ze sprawdzaniem kompilatorem swoich kodów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1