title: Native and managed destructors
body: <p>I have a native object (C++) that has a <code>gcroot</code> pointer to a managed object (C#). </p>
  
  <pre><code>class SomeNativeClass {
      gcroot&lt;SomeManagedClass ^&gt; managedClass;
  };
  </code></pre>
  
  <p><strong>Question</strong>
  When I delete a native instance of this class in native code <code>delete(someNativeClass)</code> that I previously allocated, will the <code>managedClass</code> instance get garbage collected or should I explicitly delete it (in the native destructor) as well?</p>