rekurencyjne zastosowanie operatora->
Mówi się, że operator strzałki jest stosowany rekurencyjnie. Ale kiedy próbuję wykonać poniższy kod, drukuje bełkot, kiedy ma wydrukować 4.
class dummy
{
public:
int *p;
int operator->()
{
return 4;
}
};
class screen
{
public:
dummy *p;
screen(dummy *pp): p(pp){}
dummy* operator->()
{
return p;
}
};
int main()
{
dummy *d = new dummy;
screen s(d);
cout<<s->p;
delete d;
}