CMap

dorras7 Messages postés 63 Date d'inscription dimanche 15 mars 2009 Statut Membre Dernière intervention 23 décembre 2010 - 26 sept. 2010 à 11:46
cs_louis14 Messages postés 793 Date d'inscription mardi 8 juillet 2003 Statut Membre Dernière intervention 10 février 2021 - 27 sept. 2010 à 10:01
Salut,

j'ai besoin d'utiliser le CMap dans mon code
voici la déclration sachant que la valeur de chaque clé est un tableau de structure

CMap<CString,LPCTSTR,HandlingUpdate*,HandlingUpdate*> map_Symbol;

sachant que HandlingUpdate est le nom du structure
typedef struct
{
char szKey[100];
BOOL bProcess;
}HandlingUpdate;


Los du remplissage du variable map_Symbol

HandlingUpdate g_UpdateBid[23];

g_UpdateBid[0].bProcess = FALSE;
strcpy(g_UpdateBid[0].szKey,"AA");
map_Symbol.SetAt("ABBN",g_UpdateBid);

g_UpdateBid[0].bProcess = TRUE;
strcpy(g_UpdateBid[0].szKey,"BB");
map_Symbol.SetAt("AZER",g_UpdateBid);

puis j'ai un look up

HandlingUpdate *g_UpdateBidLook;
map_Symbol.Lookup("ABBN",g_UpdateBidLook);

--> il m'a afficher les valeurs du KeyAZER et non du KeyABBN
c'est à dire le key= BB et bPorcess= TRUE

Est ce quelq'un a une idée ?
j'ai besoin d'une réponse à propose ce ça. pourquoi CMap n'a pas retourné la bonne valeur

Merci

2 réponses

dorras7 Messages postés 63 Date d'inscription dimanche 15 mars 2009 Statut Membre Dernière intervention 23 décembre 2010
26 sept. 2010 à 20:30
Salut,

j'ai besoin d'utiliser le CMap dans mon code
voici la déclration sachant que la valeur de chaque clé est un tableau de structure

CMap<CString,LPCTSTR,HandlingUpdate*,HandlingUpdate*> map_Symbol;

sachant que HandlingUpdate est le nom du structure
typedef struct
{
char szKey[100];
BOOL bProcess;
}HandlingUpdate;


Los du remplissage du variable map_Symbol

HandlingUpdate g_UpdateBid[23];

g_UpdateBid[0].bProcess = FALSE;
strcpy(g_UpdateBid[0].szKey,"AA");
map_Symbol.SetAt("ABBN",g_UpdateBid);

g_UpdateBid[0].bProcess = TRUE;
strcpy(g_UpdateBid[0].szKey,"BB");
map_Symbol.SetAt("AZER",g_UpdateBid);

puis j'ai un look up

HandlingUpdate *g_UpdateBidLook;
map_Symbol.Lookup("ABBN",g_UpdateBidLook);

--> il m'a afficher les valeurs du KeyAZER et non du KeyABBN
c'est à dire le key= BB et bPorcess= TRUE

Est ce quelq'un a une idée ?
j'ai besoin d'une réponse à propose ce ça. pourquoi CMap n'a pas retourné la bonne valeur

Merci
0
cs_louis14 Messages postés 793 Date d'inscription mardi 8 juillet 2003 Statut Membre Dernière intervention 10 février 2021 8
27 sept. 2010 à 10:01
Bonjour,

si je regarde ton code, il semble que tu n'augmente pas l'index de ton tableau pour la deuxième déclaration :
g_UpdateBid[1].bProcess = TRUE; // et non [0]
strcpy(g_UpdateBid[1].szKey,"BB"); //idem
ta première déclaration est écrasée
louis
0
Rejoignez-nous