Witam, mam 3 pytania odnośnie konwersji:
(A, B, C to klasy)
1. Dane są konwersje zdefiniowane przez użytkownika: A -> B, B -> C. Czy istnieje niejawna konwersja A -> C?
2. Dana jest konwersja A -> float. Czy istnieje konwersja A -> int?
3. Dane są konwersje: A -> float, A -> int, A -> char. Czy poprawna jest instrukcja:
cout << a << endl;
gdzie a jest obiektem klasy A?
Moje odpowiedzi:
1. Tylko i wyłącznie, kiedy chociaż jeden element (A/B/C) jest typem wbudowanym (np. int). (Lub) tak, specyfikując jawnie pierwszą konwersję, niejawnie zajdzie już tylko jedna.
2. Istnieje, ale tylko poprzez rzutowanie. (?)
3. Nie jest poprawna, kompilator nie będzie wiedział z której konwersji skorzystać
Czy moje odpowiedzi są poprawne? Pozdrawiam