• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Czy da się coś z tym zrobić nie zmieniając nic w mainie żeby wyświetlał się komunikat z klasy C?

0 głosów
555 wizyt
pytanie zadane 19 czerwca 2021 w C i C++ przez Tanormalnie Użytkownik (550 p.)
#include <iostream>

using namespace std;

class A{
public:
    void info() {cout<<"Komunikat z klasy A"<<endl;}
};
class B: public A{
public:
    void info(){cout<<"Komunikat z klasy B"<<endl;}
};
class C: public B{
public:
    void info(){cout<<"Komunikat z klasy C"<<endl;}
};

int main(){
    C c;
    A *ptrC = &c;
    ptrC->info();
}

 

2 odpowiedzi

+3 głosów
odpowiedź 19 czerwca 2021 przez j23 Mędrzec (195,220 p.)
wybrane 19 czerwca 2021 przez Tanormalnie
 
Najlepsza

Dodaj virtual przez definicją metody info w klasie A.

komentarz 19 czerwca 2021 przez Wiciorny Ekspert (282,350 p.)
sprawdziłem to u siebie, faktycznie :D zapomniałem że jako Javoviec nie muszę się tym przejmować natomiast w cpp, domyślnie metody nie sa wirtualne.
–1 głos
odpowiedź 19 czerwca 2021 przez Wiciorny Ekspert (282,350 p.)
Nie chyba, że zmieniając implementacje dziedziczenia lub definicje metod.

Podobne pytania

+1 głos
0 odpowiedzi 244 wizyt
0 głosów
0 odpowiedzi 371 wizyt
+1 głos
1 odpowiedź 266 wizyt
pytanie zadane 17 listopada 2021 w Java przez ptomeccc Użytkownik (800 p.)

93,599 zapytań

142,524 odpowiedzi

322,993 komentarzy

63,082 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...