Pure Virtural Function
Pure Virtual Function என்பது ஒரு virtual function ஆகும். இது base class-ல் declare செய்யப்பட்டு இருக்கும் ஆனால் அதை நாம் செயல்படுத்துவதில்லை. ஒரு pure virtual function-க்கு definition இல்லாமல் 0 assign செய்யப்பட்டு இருக்கும்.
#include <iostream.h>
#include <conio.h>
using namespace std;
class BaseClass{
public:
virtual show()=0;
};
Complete example for pure virtual function
#include <iostream.h>
#include <conio.h>
using namespace std;
class Base{
int x; // private variable
public:
virtual void fun() = 0; //pure virtual function
int getX(){
return x;
}
};
// This class inherits from Base and implements fun()
class Derived: public Base{
int y;
public:
void tfun() {
cout <<"tfun() called";
}
};
int main(void)
{
Derived d;
d.tfun();
return 0;
}
Output:
tfun() called
ஒரு class-ல் ஒரு pure virtual function இருந்தால் அவற்றிற்கு object create செய்ய இயலாது. இந்த function-ஐ derived class-ல் override செய்யவில்லை எனில் அந்த derived class-ம் abstract class-ஆக மாறிவிடும்.
#include <iostream.h>
#include <conio.h>
using namespace std;
class Test
{
int x;
public:
virtual void show() = 0;
int getX() { return x; }
};
int main(void)
{
Test t;
return 0;
}
Output:
Compiler Error: cannot declare variable 't' to be of abstract type 'Test' because the following virtual functions are pure within 'Test': note: virtual void Test::show()
இது பற்றிய தங்களின் கருத்துகளை இங்கே பதிவிடுங்கள் . இது பயனுள்ளதாக விரும்பினால் மற்றவர்களுக்கும் இதை share செய்யுங்கள்.
Comments