class Alpha {
public:
virtual void getData(int *src, int *dst, int data);
virtual ~Alpha() {};
private:
int mPdata = 0;
};
class Beta : public Alpha {
public:
Beta(int data) : mCdata(data) {}
virtual void getData(int *src, int *dst, int data);
virtual ~Beta() {};
private:
int mCdata = 1;
};
class Gamma : public Beta {
public:
Gamma(int data) : mGCdata(data), Beta(data) {}
virtual void getData(int *src, int *dst, int data);
virtual ~Gamma() {};
private:
int mGCdata = 2;
};
void Alpha::getData(int *src, int *dst, int data) {}
void Beta::getData(int *src, int *dst, int data) {}
void Gamma::getData(int *src, int *dst, int data) {}