ID: 3032 OOP - Zaawansowane Średnie

Źródło: Arkusze CKE

Jakiego typu funkcja jest tworzona poza klasą, ale ma dostęp do jej prywatnych i chronionych elementów?

Warianty odpowiedzi

  1. A

    Destruktor

  2. B

    Funkcja zaprzyjaźniona

  3. C

    Metoda statyczna

  4. D

    Konstruktor

Wyjaśnienie

Standardowo funkcja napisana poza klasą nie ma żadnego dostępu do jej prywatnych czy chronionych zasobów.

Jeśli jednak wewnątrz klasy dodasz deklarację z przedrostkiem friend, wskazujesz konkretną funkcję i dajesz jej dostęp do swoich ukrytych składników.

Takie rozwiązanie nazywamy funkcją zaprzyjaźnioną. Jest to mechanizm stosowany głównie w C++, gdy zewnętrzna funkcja musi ściśle współpracować z wnętrzem obiektu.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.04 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — OOP - Zaawansowane