Przeciążanie operatorów

0

Mam kilka pytań odnośnie przeciążania operatorów, czy byłby ktoś w stanie na nie odpowiedzieć?

1.Załóżmy, że przeciążamy dwuargumentowy operator mnożenia. Ile argumentów będzie miała funkcja operator*(...) jeśli przeciążymy ją jako funkcję składową ?

2.Załóżmy, że przeciążamy jednoargumentowy operator negacji. Ile argumentów będzie miała funkcja operator!(...) jeśli przeciążymy ją jako funkcję globalną ?

3.Jeśli efektem działania operatora jest powstanie nowego obiektu, to zwracamy ...... ?

4.Jeśli wynikiem działania operatora jest jeden z jego argumentów (zmodyfikowany lub nie), to zwracamy ..... ?

5.W jaki sposób definiujemy konwersję z obcego typu do "naszej klasy" ? Jak uniknąć przypadkowego zdefiniowania takiej konwersji ?

6.W jaki sposób definiujemy operację konwersji z naszej klasy do obcego typu ?

7.Jakie problemy mogą się pojawić po zdefiniowaniu operatorów konwersji "w obie strony" (tzn np. double->Zespolona i Zespolona->double) ?

1

Masz egzamin czy coś?

9

Taa... Mają kolokwium za 5 dni...

Do pytającego - zapraszam na konsultacje - ja naprawdę nie gryzę, choć czasem odeślę do książki lub zapytam co do tej pory przeczytaliście ;)

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