Problème segfault copie de map
Bonjour,
je rencontre un problème de segmentation fault que je ne comprend pas.
J'ai la structure suivante :
Code:
1 2 3 4 5 6
|
typedef struct _dbus_order{
int nUserId;
int nChannelId;
std::map < int , int > mapArticlesId;
}dbus_order; |
Et je m'en sert comme ca :
Code:
1 2 3 4 5 6 7
|
dbus_order *pData = (dbus_order *)malloc(sizeof(pData));
std::map < int , int > mapTmp;
for(unsigned int i=0 ; i < p_basket->getList().size() ; i++){
mapTmp.insert(std::pair<int , int>(p_basket->getList()[i].id , p_basket->getList()[i].quantity));
}
pData->mapArticlesId = mapTmp; |
La suite n'a pas d'importance.
et la copie (derniere ligne) me crée une erreur de segmentation.
J'ai essayé aussi :
Code:
1 2
|
pData->mapArticlesId.insert(mapTmp.begin(), mapTmp.end()); |
mais meme résultat.
merci d'avance pour votre aide