problème avec une destruction de struct
Bonjour à toutes et tous,
Je me tourne vers vous car j'ai un problème que je n'arrive pas à résoudre...
Mon code ressemble à ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
class A
{
public:
struct B
{
int i;
int j;
int k;
};
struct C
{
/*
des tas de choses
*/
vector<B> vecB;
};
/*
des tas de choses
*/
protected:
map<string, C> mapC;
}; |
Je ne vous mets pas tout car le problème n'apparait qu'à la fermeture de l'application, la compilation et l’exécution fonctionnent sans problème.
Avec le débogueur j'ai trouvé que l'erreur était dans c:\mingw\lib\gcc\mingw32\4.8.1\include\c++\ext\new_allocator.h:110,
Code:
1 2 3 4 5 6 7
| return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
}
// __p is not permitted to be a null pointer.
void
deallocate(pointer __p, size_type)
{ ::operator delete(__p); } //ligne 110 |
De plus, le débogueur m'indique que cela se produit sur un objet de type struct B.
Il me semble donc comprendre qu'il y a problème de destruction soit avec map<string, C> soit avec vector<B>Si vous avez une idée ou une piste, je suis preneur, d'avance merci.