Недавно прочитал статью
http://www.ddj.com/documents/s=10011/q=1/cuj0601bolton/0601bolton.html
И хочу предложить свой вариант
со своими плюсами и минусами.
Что вы об етом думаете?
//------------------------------------------------------------
class A
{
public:
virtual ~A(){};
private:
virtual void foo(){printf("A::foo \n");};
friend class N;
};
//------------------------------------------------------------
class B : public A
{
public:
virtual ~B();
private:
virtual void foo(){ printf("B::foo \n");};
};
//------------------------------------------------------------
class N
{
public:
void myfoo()
{
B b;
A* pA = &b;
pA->foo();
}
};
//------------------------------------------------------------
int main(int argc, char* argv[])
{
N n;
n.myprint();
}
//------------------------------------------------------------