Wpis z mikrobloga

@mowmivector: Ej, ale tutaj zdefiniowany jest konstruktor z jednym argumentem, który właśnie po to został stworzony. Do przeprowadzania konwersji (w tym przypadku double na typ klasy). Zauważ, że pierwsze konwersje przy inicjalizcji przechodzą.

Ogarnij rzutowanie typów klas.
  • Odpowiedz
@VanQator: Ty nie tworzysz nowego obiektu tylko przypisujesz już istniejącemu nową wartość dlatego nie odpala się konstruktor tylko operator przypisania

Takie coś by działało:
JednostkiWagi obj = 55.1;
takie coś nie działa bo nie ma operatora przypisania
obj = 55.1;
  • Odpowiedz
@VanQator: Dobra książka ma racje. Normalnie kompilator tworzy operator przypisania z konstruktora. Ale w twojej klasie jest const double przez co kompilator postanowił usunął operator przypisania i dlatego nie możesz go używać do póki nie zadeklarujesz własnego.
  • Odpowiedz