Skip to content

Instantly share code, notes, and snippets.

@rchatsiri
Created August 16, 2010 09:57
Show Gist options
  • Save rchatsiri/526720 to your computer and use it in GitHub Desktop.
Save rchatsiri/526720 to your computer and use it in GitHub Desktop.
class BaseClassA {
public:
BaseClassA();
virtual int readBuf(const char*); // same too!.
virtual ~BaseClassA();
};
class SplitBaseA : public BaseClassA{
public :
virtual int splitBaseAReadBuff(const char* value ) = 0;
SplitBaseA();
virtual ~SplitBaseA();
private :
int readBuf(const char* value){
return splitBaseAReadBuff(value);
}
};
class BaseClassB {
public:
BaseClassB();
virtual int readBuf(const char*); // same too!.
virtual ~BaseClassB();
};
class SplitBaseB : public BaseClassB{
public :
virtual int splitBaseBReadBuff(const char* value) = 0;
SplitBaseB();
virtual ~SplitBaseB();
private :
int readBuf(const char* value){
return splitBaseBReadBuff(value);
}
};
int main(){
DerivedClass d;
BaseClassA* pbA = &d;
BaseClassB* pbB = &d;
pbA->readBuf("test");
pbB->readBuf("testB");
std::cout<<"END TEST"<<std::endl;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment