avevo immaginato che il problema fosse proprio nel riferimento, tuttavia non capisco cosa può cambiare dal passare come argomento un elem per puntatore-riferimento e passarlo solo come puntatore. un riferimento nel c++ non è un "nome alternativo" dell'oggetto? in che modo riesce a cambiare drasticamente tutto il codice?