Ho alcuni dati forniti con un indice intero. Sto generando continuamente nuovi dati che devono essere aggiunti alla raccolta di dati che ho, ordinati in base a quell'indice, allo stesso tempo voglio essere in grado di iniziare facilmente i dati e scorrere attraverso di essa. Sembra che std :: multimap sia proprio quello di cui ho bisogno.in che modo l'inserto multimap di stl's rispetta gli ordini?
Tuttavia, ho anche bisogno che i dati con lo stesso indice siano mantenuti nell'ordine in cui è stato inserito, in questo caso significa che quando eseguo l'iterazione dei dati arrivo ai dati precedenti prima dei dati successivi.
Il multimap fa questo?
Non ho trovato alcuna garanzia che questo sia il caso. Nel manuale SGI, non ho visto alcuna menzione di se. L'ho provato sull'implementazione di gcc 4.3.4 e sembrava essere vero per alcuni casi di test limitati, ma ovviamente mi chiedevo se lo standard lo richiedesse e posso fare affidamento su questo fatto.
Modifica: Per essere più chiari in risposta ad alcune delle risposte, volevo che i dati ordinati per primo (non univoco) indice e il secondo per tempo di inserimento. Speravo che forse la seconda parte fosse gratis con multimap, ma sembra che non sia così.
Che ne dite di un esempio? – Hermes