I was reading the following MSKB example and they perform a delete on a managed object.

I was under the impression you should never delete a garbaged collected object rather you must leave that to garbage collector.

What have I missed?

Method 4

 //#include <msclr/marshal.h>
 //using namespace msclr::interop;
 marshal_context ^ context = gcnew marshal_context();
 const char* str4 = context->marshal_as<const char*>(str);
 puts(str4);
 delete context;
Edit
Report