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

[CR] Obiektowy C++ (#6): Funkcje wirtualne. Polimorfizm

Cloud VPS
+1 głos
2,572 wizyt
pytanie zadane 7 maja 2016 w Nasze poradniki przez Mirosław Zelent Nałogowiec (34,770 p.)

CR = Code Review. O co chodzi? Zajrzyj tutaj
Pełna lista wszystkich Code Review? Zajrzyj tutaj

https://www.youtube.com/watch?v=9hGPe6BnTY4

polimorfizm.cpp:

#include <iostream>

using namespace std;

class Ksztalt
{
public:
   virtual void oblicz_pole()=0;
   //czysta funkcja wirtualna
};
//////////////////////////////////

class Kolo :public Ksztalt
{
   float r;
public:
   Kolo(float x)
   {
      r=x;
   }
   virtual void oblicz_pole()
   {
      cout<<"Pole kola: "<<3.14*r*r<<endl;
   }
};
////////////////////////////////////////

class Kwadrat :public Ksztalt
{
   float a;
public:
   Kwadrat(float x)
   {
      a=x;
   }
   virtual void oblicz_pole()
   {
      cout<<"pole kwadratu: "<<a*a<<endl;
   }
};
//////////////////////////////////

void obliczenia(Ksztalt *x)
{
   x -> oblicz_pole();
}

int main()
{
    Kolo k(1);
    Kwadrat kw(2);

    Ksztalt *wsk;

    wsk = &k;
    wsk -> oblicz_pole();

    wsk = &kw;
    wsk -> oblicz_pole();

    obliczenia(wsk);

    return 0;
}

Paczka z odcinka: POBIERZ​

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+4 głosów
1 odpowiedź 2,830 wizyt
+3 głosów
0 odpowiedzi 1,756 wizyt
+1 głos
1 odpowiedź 2,312 wizyt

93,488 zapytań

142,422 odpowiedzi

322,772 komentarzy

62,906 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
...