Erro do compilador C2818
aplicativo de 'operator ->' sobrecarregado é recursivo por meio do tipo 'type'
Uma redefinição do operador de acesso a membro de classe contém uma instrução return
recursiva. Para redefinir o operador ->
com recursão, você deve mover a rotina recursiva para uma função separada chamada da função de substituição do operador.