Wpis z mikrobloga

Cześć,

próbuje napisać klasę liczb zespolonych, mam problem z napisaniem operatorów: +=, -=, *=, /=
Oraz dodaniu mozliwości konwersji z jednego typu na drugi.
Jak ktoś mógłby coś pomóc byłbym wdzięczny.

Poniżej przykład jak zrobione mam dodawanie.

https://pastebin.com/JBJVedRi

#cpp
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Primusek: Tak, ale operatorze dodawania zwracam sobie po prostu wartość za pomocą return temp.

Jeśli chciałem użyc w mainie np:
a =Zespolona(2,1);
c =Zespolona(2,1);
  • Odpowiedz
@lyone: cout dla tej klasy też musi być zdefiniowane

friend std::ostream & operator<<(std::ostream & os)
{
os << "Czesc rzeczywista: " << reNum << std::endl;
os << "Czessc urojona: " << imNum
  • Odpowiedz
cout mam zdefiniowane troche inaczej. Ale działa

To co dodałes nie chciało mi sie kompilować.
Zmieniłem to tak:
template
Zespolona Zespolona::operator +=(const Zespolona& obj)
  • Odpowiedz
@Primusek:

Operator -= udało mi się zrobić.
Natomiast *= i /= nie za bardzo wiem jak napisać. Mógłbyś zobaczyć na to? Przy mnożeniu cześć rzeczywista liczy się dobrze, urojona już
  • Odpowiedz