rekursive Anwendung von operator->

Es wird gesagt, dass der Pfeiloperator rekursiv angewendet wird. Wenn ich jedoch versuche, den folgenden Code auszuführen, wird Kauderwelsch ausgegeben, wenn 4 ausgegeben werden soll.

<code>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;
}
</code>

Antworten auf die Frage(3)

Ihre Antwort auf die Frage