Effacer element d'une CList

ricky78 Messages postés 126 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 11 juillet 2006 - 30 juin 2005 à 15:58
ricky78 Messages postés 126 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 11 juillet 2006 - 1 juil. 2005 à 12:29
Bonjour
J'utilise une Clist declarée comme suit :
CList<CString,CString&> myTagList(100);

J'envoie cette CList dans une DLL que j'ai crée qui me la retourne avec les éléments de la liste modifiés
TheIdent.IdComplete(str,&myTagList);


TheIdent étant le nom de ma classe dans ma DLL et IDcomplete le nom de la fonction que je lance.
Au retour de la DLL je peux recuperer mes elements de ma liste, me deplacer dedans mais des que j'essaye d'effacer un élément avec


myTagList.RemoveHead();
ou que j'essaye de les effacer tous avec
myTagList.RemoveAll();
Je me prends un Debug Assertion Failed dans mon exe avec comme info
File:dbgheap.c
Line : 1011
Expression : _CrtIsValidHeapPointer(pUserData)


Que veut dire cette erreur et comment soit detruire completement ma liste ou effacer tous cces éléments


Merci pour votre aide

TOCHE

2 réponses

rvkiki Messages postés 11 Date d'inscription lundi 20 janvier 2003 Statut Membre Dernière intervention 1 juillet 2005
1 juil. 2005 à 12:11
salut
à priori ça doit être un pb de taille pour tes variables. Vérifie que tout est bien initialisé, ça résolvera ptêtre ton pb
0
ricky78 Messages postés 126 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 11 juillet 2006
1 juil. 2005 à 12:29
En fait je ne sait pas pourquoi mais le pb arrive uniquement en mode debug et pas en release.
J'ai trouvé cela sur un site et je ne comprends pas


Error messages referencing dbgheap.c
Occasionally a user will report that an app linked with the runtime SmartHeap lib (
shdw32m(t).lib or shlw32m(t).lib
) crashed with the error message
Debug Assertion Failed!
program xxxx.exe
File: dbgheap.c
Line: 1011
Expression: _CrtlsValidHeapPointer(pUserData)

This error can only occur if Debug C runtime library or Debug MFC is used -- the file
dbgheap.c
is part of the debug VC CRT, as is the API
CrtIsValidHeapPointer
. So the invocation of this error in association with the Runtime SmartHeap libraries indicates a runtime/debug mismatch. Runtime SmartHeap does not support debug versions of the C runtime libraries. If your application links with the Debug C runtime library it must also link with the Debug SmartHeap library.

je ne sais pas si cela repond reellement à mon pb et si je peux sous visual C++ 6.0 link avec the Debug SmartHeap library

TOCHE
0
Rejoignez-nous