共用方式為


__gc

注意事項注意事項

本主題只適用於 Managed Extensions for C++ 第 1 版。這個語法只可用於維護第 1 版的程式碼。如需在新語法中使用同等功能的詳細資訊,請參閱類別和結構 (C++ 元件擴充功能)

宣告 __gc 類型。

__gc array-specifier 
__gc class-specifier 
__gc struct-specifier 
__gc interface-specifier 
__gc pointer-specifier 
__gc new

備註

__gc 類型是一個 C ++ 語言的擴充功能,它藉由提供如互通性和記憶體回收這類功能,簡化了 .NET Framework 程式設計。

注意事項注意事項

除非成員函式是純虛擬函式,否則必須定義抽象 __gc 類別的每個成員函式。

在 Managed Extensions for C++ 中,C# 類別和 C# 結構的對等用法如下:

Managed Extensions for C++

C#

如需詳細資訊

__gc struct 或 __gc class

class

class 關鍵字

__value struct 或 __value class

struct

struct 關鍵字

範例

在下列範例中,Managed 類別 (X) 是使用公用資料成員宣告,透過 Managed 指標操作:

// keyword__gc.cpp
// compile with: /clr:oldSyntax
#using <mscorlib.dll>
using namespace System;

__gc class X {
public:
   int i;
   int ReturnInt() { return 5; }
};

int main() {
   // X is a __gc class, so px is a __gc pointer
   X* px;
   px = new X;   // creates a managed object of type X
   Console::WriteLine(px->i);

   px->i = 4;   // modifies X::i through px
   Console::WriteLine(px->i);

   int n = px->ReturnInt();   // calls X::ReturnInt through px
   Console::WriteLine(n);
}

輸出

0
4
5