Export (0) Print
Expand All
Expand Minimize

Compiler Warning (level 3) C4281

'operator –>' recursion occurred through type 'type'

Your code allows operator–> to call itself.

The following sample generates C4281:

// C4281.cpp
// compile with: /W3 /WX
struct A;
struct B;
struct C;

struct A
{
   int z;
   B& operator->();
};

struct B
{
   C& operator->();
};

struct C
{
   A& operator->();
};

void f(A p)
{
   int i = p->z; // C4281
}

Community Additions

ADD
Show:
© 2014 Microsoft