ciao
ho il seguente codice:
[code]
enum IfcTimeSeriesDataTypeEnum {
continuous,
discrete,
discretebinary,
piecewisebinary,
piecewiseconstant,
piecewisecontinuous,
notdefined,
};
[code]
e
questi due blocchi di codice sono autogenerati, posseggo infatti tutti gli enum in una mappa a partire da un xsd , e li creo con un ciclo ,ho i metadati .codice:enum IfcTransitionCode { discontinuous, continuous, contsamegradient, contsamegradientsamecurvature, };
Il problema è che naturalmente il compilatore c++ mi da quest errore:
qual è il modo migliore di sistemare il tutto per voi?codice:c:\IFCXML\Dom\test2\conversions\ifc.h(366): error C2365: 'continuous' : redefinition; previous definition was a 'enumerator' c:\IFCXML\Dom\test2\conversions\ifc.h(273) : see declaration of 'continuous'
sapendo che questi enum vengono utilizzati col loro nome, senza namespace da una serie di classi anch esse autogenerate , quindi se si cambia il nome , questo va cambiato anche in tutte le classi .
Avevo visto il modo di "fare partire" l'enum da un indice diverso impostando con un uguale l'offset nell enum.
cosi:
puo ' essere una soluzione ?codice:enum pippoEnum { pippoa, pippob, pippoc }; enum plutoEnum { pippoa = 5, pluto, pluto };
il problema è che le classi si riferiscono con pippoa a due enum diversi , quale si sceglie?
insomma sono un po a corto di idee.
magari un typedef?????
grazie.

Rispondi quotando