#include <iostream>
#include <string.h>
using namespace std;
class Tekst{
private:
string _t;
public:
void wpisz(string a){a=_t;}
virtual string pobierz(){return _t;}
};
class Haslo:public Tekst
{
virtual string pobierz(){return "***";}
};
int main()
{
Tekst T;
Haslo H;
Tekst *wsk;
string a;
cin>>a;
T.wpisz(a);
H.wpisz(a);
int i;
cin>>i;
if(i==1)
{
wsk=&T;
wsk->pobierz();
}
else
{
wsk=&H;
wsk->pobierz();
}
cin.get();
return 0;
}
Posiadam taki oto kod, ale nie do końca czuję funkcje wirtualne. Zasada działania jest taka -> użytkownik wpisuje string, ten leci zarówno do klasy Tekst oraz Hasło, i teraz w zależności czy użytkownik wpisze 1 czy nie chciałbym wywołać odpowiednią funkcję z odpowiedniej klasy. Jednak jak napisałem nie do końca rozumiem funkcje wirtualne oraz w jaki sposób miałyby mi pomóc np. w późniejszym rozwijaniu kodu.