Se tu scrivi
codice:
     Lista L2(L1);
definisci un nuovo oggetto L2 di tipo Lista, invocando il costruttore che prende in input il tipo di L1 (nel tuo caso anch'esso Lista, quindi, nel tuo caso, il costruttore di copia), chiami cioè
codice:
Lista::Lista(Lista& L1)
{//...}
Se invece l'avevi già creato da qualche altra parte ed in questo punto del codice ti serve che adesso sia una copia di L1 allora devi usare l'operatore = (che devi ridefinire nella classe, nel caso non l'avessi fatto), scrivendo semplicemente:
codice:
L2 = L1;