Articles of iterator

Come posso copiare una mappa in un’altra usando std :: copy?

Vorrei copiare il contenuto di una std :: map in un’altra. Posso usare std::copy per questo? Ovviamente, il seguente codice non funzionerà: int main() { typedef std::map Map; Map m1; m1[3] = 0.3; m1[5] = 0.5; Map m2; m2[1] = 0.1; std::copy(m1.begin(), m1.end(), m2.begin()); return 0; } Ciò non funzionerà perché la copy chiamerà operator* […]

quanto è portatile il decremento dell’iteratore?

Ho appena riscontrato un decremento di iteratore di end() nei codici sorgente della mia azienda e mi sembra strano. Per quanto mi ricordo, questo funzionava su alcune piattaforms, ma non per gli altri. Forse ho sbagliato, tuttavia non ho trovato nulla di utile in questo. Lo standard dice solo che end() restituisce un iteratore che […]

Iterazione e cancellazione da Hashtable in Java

Ho un Hashtable in Java e voglio scorrere su tutti i valori nella tabella ed eliminare una particolare coppia chiave-valore durante l’iterazione. Come può essere fatto?

Perché gli oggetti non sono introvabili in JavaScript?

Perché gli oggetti non sono iterabili per impostazione predefinita? Vedo sempre domande relative agli oggetti iteranti, la soluzione comune è quella di scorrere le proprietà di un object e accedere ai valori all’interno di un object in questo modo. Sembra così comune che mi chiedo perché gli oggetti stessi non siano iterabili. Affermazioni come ES6 […]

ArrayIndexOutOfBoundsException quando si utilizza l’iteratore di ArrayList

In questo momento, ho un programma contenente un pezzo di codice che assomiglia a questo: while (arrayList.iterator().hasNext()) { //value is equal to a String value if( arrayList.iterator().next().equals(value)) { // do something } } Lo sto facendo bene, per quanto riguarda l’iterazione con l’ArrayList? L’errore che sto ottenendo è: java.lang.ArrayIndexOutOfBoundsException: -1 at java.util.ArrayList.get(Unknown Source) at main1.endElement(main1.java:244) […]

Iterare con ciclo for o while?

Vedo spesso codice come: Iterator i = list.iterator(); while(i.hasNext()) { … } ma scrivo che (quando Java 1.5 non è disponibile o per ognuno non può essere usato) come: for(Iterator i = list.iterator(); i.hasNext(); ) { … } perché È più breve Ti tiene in un ambito più piccolo Riduce la possibilità di confusione. (Viene […]

Iteratore del nome tipolo del modello C ++

Considera il seguente file di intestazione: template struct tNode { T Data; //the data contained within this node list<tNode*> SubNodes; //a list of tNodes pointers under this tNode tNode(const T& theData) //PRE: theData is initialized //POST: this->data == theData and this->SubNodes have an initial capacity // equal to INIT_CAPACITY, it is set to the head […]

std :: vector iterator invalidation

Ci sono state alcune domande riguardo a questo problema prima; la mia comprensione è che chiamare std::vector::erase invaliderà solo gli iteratori che si trovano in una posizione dopo l’elemento cancellato. Tuttavia, dopo aver cancellato un elemento, l’iteratore in quella posizione è ancora valido (a patto, ovviamente, che non punta a end() dopo la cancellazione)? La […]

È ansible unire gli iteratori in Java?

È ansible unire gli iteratori in Java? Ho due iteratori e voglio combinarli / unirli in modo da poter scorrere i loro elementi in un colpo solo (nello stesso ciclo) anziché in due passaggi. È ansible? Si noti che il numero di elementi nei due elenchi può essere diverso, quindi un ciclo su entrambi gli […]

I costitutori sono più veloci?

Le nostre linee guida per la codifica preferiscono const_iterator , perché sono un po ‘più veloci rispetto a un normale iterator . Sembra che il compilatore ottimizzi il codice quando si utilizza const_iterator . E ‘davvero corretto? Se sì, cosa succede veramente internamente che rende const_iterator più veloce? EDIT: Ho scritto un piccolo test per […]