Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    [c++]Numerazione elementi

    ciao.
    Devo eseguire un importazione di dati da un formato F1 ad un formato F2.
    Ho tre categorie di elementi : A / B / C e queste valgono per tutti e due i formati.
    Nel formato F1 gli elementi hanno degli offset definiti :
    A : offset 0
    B : offset 1000000
    C : offset 2000000
    un elemento 2000001 è un C cosi come un 2000022, un 1000200 è un B e cosi ' via , nel formato F2 no , utilizza una sua numerazione in cui non compaiono comunque duplicati ,Questo(gli offset 1000000 2000000 3000000) è stato creato nel formato F1 per distinguere gli elementi ma è risultata una gestione infelice con cui adesso faccio i conti sempre di piu'.

    vorrei gestire un metodo di numerazione quando importo pero da F2 a F1 facendo in modo che nel formato F1 non ci siano duplicati , ma che lo spazio occupato sia il minimo possibile.
    Penso che sia un tipo di problema simile a quello degli allocator in stl(penso , scusate se dico baggianate).
    Io pensavo di utilizzare un indice di trascodifica per passare da un formato all altro , ma in questo modo ho molti dati ridondanti.

    grazie.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    forse è piu semplice creare una struttura dati standard e cambiare l'iterator che la scorre.
    ma non so bene come.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    Faccio un esempio per spiegarmi meglio:
    devo importare 4 tipi di oggetti A,B,C,D ognuno ha un id univoco stabilito dall' offset intrinseco dell oggetto:

    A offset 0
    B offset 1000000
    C offset 2000000
    D offset 3000000

    il problema è che devo compattare per vari motivi gli indici.
    Per fare questo basta dividere per l'offset a seconda dei tipi di oggetto e prendere il resto.
    Il nuovo problema è che in questo modo l'id puo essere duplicato:
    as es 1000003 e 2000003, ho pensato che posso usare un multimap, ma come poi andare a pescare l'id giusto?
    relativo all elemento giusto?
    il multimap è ordinato come la mappa ?
    posso in qualche modo stabilire un ordine negli elementi duplicati facendo l'override del operatore < ?
    scusate se ho fatto 3 post ma ci ho ragionato su in questo tempo e sono giunto a queste conclusioni.
    grazie.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.