title: Does std::vector<T>::clear() call destructor of the content?
body: <p>If I have a std::vector of something (say,does std::vector::clear() call destructor of the content? For example, if I have a data as vector, is the following code valid?</p>
  
  <pre><code>char * pd;
  for(vector&lt;char *&gt;::iterator it = data.begin(); it != data.end(); ++it) {
    pd = *it;
    delete pd;
  }
  </code></pre>
  
  <p>Or, is it redundant as data.clear() would do that? I presume not, i.e. manual deallocation of the content is needed. I presume, data.clear() will not call implicit destructor for the contents? Is it correct? This is for pre C++11.</p>