Udostępnij za pomocą


Błąd kompilatora C3160

"wskaźnik": składowa danych klasy zarządzanej lub WinRT nie może mieć tego typu

Uwagi

Wewnętrzne wskaźniki odzyskiwania pamięci mogą wskazywać wnętrze klasy zarządzanej lub WinRT. Ponieważ są wolniejsze niż wskaźniki całego obiektu i wymagają specjalnej obsługi przez moduł odśmiecanie pamięci, nie można zadeklarować wewnętrznych wskaźników zarządzanych jako składowych klasy.

Example

Poniższy przykład generuje kod C3160:

// C3160.cpp
// compile with: /clr
ref struct A {
   // cannot create interior pointers inside a class
   interior_ptr<int> pg;   // C3160
   int g;   // OK
   int* pg2;   // OK
};

int main() {
   interior_ptr<int> pg2;   // OK
}