In un algoritmo che sto attualmente implementando, ho bisogno di manipolare un elenco std :: struct T. T contiene un riferimento a un'altra istanza di T, ma questo riferimento può anche essere "non assegnato". Inizialmente, volevo usare un puntatore per mantenere questo riferimento, ma usare un iteratore invece rende più facile la rimozione dalla lista.Iteratore equivalente al puntatore nullo?
La mia domanda è: come rappresentare l'equivalente del puntatore nullo con il mio iteratore?
Ho letto la soluzione generale è utilizzare myList.end(), ma nel mio caso, ho bisogno di verificare se l'iteratore è "null" o no, e posso aggiungere o rimuovere elementi alla lista tra il momento in cui Conservo l'iteratore e nel momento in cui lo rimuovo dall'elenco ... Devo far puntare l'iteratore su una lista conosciuta contenente l'elemento "null"? O c'è una soluzione più elegante?
Ok, fantastico! Avevo la sensazione che end() sarebbe stata una "eccezione alla regola", e che rappresenterebbe il prossimo elemento che avresti push_back nella tua lista ... – Mikarnage
Nah, la STL è più intelligente di quella. :) – suszterpatt
Sono curioso: qualcuno sa se anche quello è nello "standard"? – sje397