Procedura: utilizzare gcnew per creare tipi di valore e utilizzare la conversione boxing implicita
L'uso di gcnew in un tipo valore creerà un tipo valore boxed, che può quindi essere inserito nell'heap gestito e sottoposto a Garbage Collection.
Esempio
// vcmcppv2_explicit_boxing4.cpp
// compile with: /clr
public value class V {
public:
int m_i;
V(int i) : m_i(i) {}
};
public ref struct TC {
void do_test(V^ v) {
if (v != nullptr)
;
else
;
}
};
int main() {
V^ v = gcnew V(42);
TC^ tc = gcnew TC;
tc->do_test(v);
}