title: Why do C++ objects have a default destructor?
body: <p>When I don't declare a constructor for example, the compiler will provide me with a default constructor that will have no arguments and no definition (empty body), and thus, will take <strong>no action</strong>.</p>
  <p>So, if I'm finished with an object for example, wouldn't the default destructor reallocate (free) memory used by the object? If it doesn't, why are we getting it?</p>
  <p>And, maybe the same question applies to the default constructor. If it does nothing, why is it created for us by default?</p>