Sanal fonksiyonlar, miras alınan sınıfın bir fonksiyonunu miras alan sınıfta farklı bir şekilde kullanmamıza yarayan fonksiyonlardır. Fonksiyon tanımlarken başına virtual eklemek yeterlidir. Örnek;
classKedi : public Hayvan { private: public: // ana sinifin sahip oldugu sesiGetir fonksiyonunu farkli sekilde kullanabiliyoruz. string sesiGetir() { return"miyav"; } Kedi(); ~Kedi(); };
Kedi::Kedi(){} Kedi::~Kedi(){}
// kopek sinifimiz. classKopek : public Hayvan { private: public: // ana sinifin sahip oldugu sesiGetir fonksiyonunu farkli sekilde kullanabiliyoruz. string sesiGetir() { return"havhav"; } Kopek(); ~Kopek(); };