次の方法で共有


コンパイラの警告 (レベル 3) C4281

クラス 'type' の 'operator ->' は再帰的な呼び出しです。

このコードは、operator-> で自分自身を呼び出せる状態になっています。

次の例では 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
}