title: Raw vs Unique pointers in the list
body: <p>Let's say I have std::list of some class T.</p>
  
  <p>What is the best way to manage these elements? Considering that only the manager(I mean - the one owner) can add or remove items from the list.</p>
  
  <p>1) </p>
  
  <pre><code>std::list &lt; T* &gt; myList;
  
  //adding the new element
  myList.push_back( new T(..) );
  
  //deleting the one element
  ...roaming through the list...got it...
  delete *iterator;
  myList.erase(iterator);
  </code></pre>
  
  <p>2) </p>
  
  <pre><code>std::list &lt; std::unique_ptr&lt;T&gt; &gt; myList;
  
  //adding the new element
  myList.push_back ( std::unique_ptr&lt;T&gt;( new T(..) );
  
  //deleting the one element
  ...roaming through the list...got it...
  myList.erase(iterator);
  </code></pre>