linked list push front
<pre><code>  void push_front(const dataType &amp;item)
  {
     head=new dnode&lt;dataType&gt; (item,NULL,head);
     if (!empty())
        head-&gt;next-&gt;prev=head;
     else
        tail=head;
     numItems++;
  }
</code></pre>

<p>I have a piece of code here, however I don't really understand it, what is the line <code>head-&gt;next-&gt;prev=head</code> do ? could anyone please explain, thanks</p>
