title: Class inherited from a vector of itself
body: <p>It is possible in C++ to declare such class:</p>
  
  <pre><code>class A : public std::vector&lt;A&gt;
  {
  public:
      A() = default;
      ~A() = default;
  }
  </code></pre>
  
  <p>Ok, it is bad to inherit from STL containers, it is bad to hide non-virtual destructor. </p>
  
  <p>But is there any purpose of classes like this? What it can be used for?</p>