{{indexmenu_n>5}} ====== ref class ====== ref classで定義されたクラスは、つねにマネージヒープ上に作られます。スタック上に作ったように見えても、実際はマネージヒープ上に作られます。 gcnewを使ってインスタンスを作成した場合、^を使って参照として受け取ります。これをハンドルといいます。 ref class C { int i; int j; public: C() { } ~C() { } !C() { } }; int main() { C^ a = gcnew C; C^ b = gcnew C; C c; { C d; } // d.~C()が呼ばれます。 delete a; // a->~C()が呼ばれます。 } // c.~C()が呼ばれます。 // b.!C()が呼ばれます。