title: Generic Lists copying references rather than creating a copiedList
body: <p>I was developing a small function when trying to run an enumerator across a list and then carry out some action. (Below is an idea of what I was trying to do.</p>
  
  <p>When trying to remove I got a "Collection cannot be modified"  which after I had actually woken up I realised that tempList must have just been assigned myLists reference rather than a copy of myLists. After that I tried to find a way to say </p>
  
  <p>tempList = myList.copy</p>
  
  <p>However nothing seems to exist?? I ended up writing a small for loop that then just added each item from myLsit into tempList but I would have thought there would have been another mechanism (like clone??) </p>
  
  <p>So my question(s):</p>
  
  <ul>
  <li>is my assumption about tempList receiving a reference to myList correct</li>
  <li><p>How should a list be copied to another list?</p>
  
  <pre><code>    private myList as List (Of something)
  
  sub new()
      myList.add(new Something)
  end sub
  
  sub myCalledFunction()
      dim tempList as new List (Of Something)
      tempList = myList
      Using i as IEnumerator = myList.getEnumarator
         while i.moveNext
             'if some critria is met then 
             tempList.remove(i.current)
         end
      end using
  
  end sub
  </code></pre></li>
  </ul>