Megosztás a következőn keresztül:


C2819-fordítási hiba

A 'type' típus nem rendelkezik túlterhelt 'operator ->' taggal.

Megjegyzések

A mutatóművelet használatához definiálnia operator->() kell.

Példák

Az alábbi példa c2819-et hoz létre:

// C2819.cpp
// compile with: /c
class A {
   public:
      int i;
};

class B {};

void C(B j) {
   j->i;   // C2819
}

class D {
   A* pA;

   public:
      A* operator->() {
         return pA;
      }
};

void F(D j) {
   j->i;
}

A C2819 akkor is előfordulhat, ha A C++ Stack Szemantikát használ a referenciatípusokhoz. Az alábbi példa c2819-et hoz létre:

// C2819_b.cpp
// compile with: /clr
ref struct R {
   void Test() {}
};

int main() {
   R r;
   r->Test();   // C2819
   r.Test();   // OK
}