Skip to content

Latest commit

 

History

History
44 lines (36 loc) · 656 Bytes

compiler-warning-level-3-c4281.md

File metadata and controls

44 lines (36 loc) · 656 Bytes
description title ms.date f1_keywords helpviewer_keywords ms.assetid
Learn more about: Compiler Warning (level 3) C4281
Compiler Warning (level 3) C4281
11/04/2016
C4281
C4281
a9771261-5725-4fc6-87b6-16cf92113a25

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
}