共用方式為


編譯器錯誤 C3160

'pointer': Managed 或 WinRT 類別的資料成員不能有這種類型

內部記憶體回收指標可能指向 Managed 或 WinRT 類別的內部。 因為它們比完整物件指標更慢,而且需要記憶體回收行程進行特殊處理,您無法將內部 Managed 指標宣告為類別的成員。

下列範例會產生 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
}