rebonjour, toujours dans la serie des outils, j'en suis au memory manager.

j'ai a peu pres respecté tout ce qu'il y a ecrit ici
http://loulou.developpez.com/tutorie...artie1/#L2.2.2
et la --> http://www.flipcode.com/articles/article_memoryleaks.shtml

la compilation se passe assez bien (sous linux g++ 4.0)
mais l'execution n'est pas terriible
voici un pitit prog test
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
 
#if _DEBUG
#include "tools/OPNewDeleteOn.h"
#endif
 
struct test{
	void print(){std::cout <<"bonjour"<<endl;}
 
};
 
main(){
 
 
                cout << "Avant test* A = new test;" << endl;
		test* A = new test;
		cout << "Avantdelete A;" << endl;
		delete A;			
 
 
}
#if _DEBUG
#include "tools/OPNewDeleteOff.h"
#endif
et voivi ce qu'il me sort a l'execution


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
elekis@ubuntu:~/stuff$ ./test
Avant test* A = new test;
dans new
dans Instance
dans delete
dans Instance
terminate called after throwing an instance of '__gnu_cxx::recursive_init'
  what():  N9__gnu_cxx14recursive_initE
Abandon
les dans new, dans Instances, sont respectivement les fonctions de loulou
http://loulou.developpez.com/tutorie...artie1/#L2.2.2

j'ai googelisé, que dalle...
j'aurais voulu savoir ce que veux dire cette erreur (c'est la premiere fois que je vois cette erreur la.)

a noté que si j'enleve le delete A, tout fonctionne impect (si ce n'est que j'ai une fuite de memoire)

et que l'erreur apres été isolé se trouve ici (enfin , je crois
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
CMemoryManager& CMemoryManager::Instance()
{
    static CMemoryManager Inst;
    return Inst;
}
anyidea???


merci

a+++