Bonjour, j'ai une application c++ qui fonctionne mal, je pense que le probleme vient de la memoire car j'ai une fonction qui remplit un tableau et le renvoit en retour, mais je ne vois pas comment ensuite liberer la memoire car la variable est locale à la fonction.

voici ma fonction:

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
ns__classedetab transATVAL2(ATListe * apTab)
{
	ns__classedetab tab;
 
	tab.tabcoparam.__size = apTab->Count() ;
	tab.tabcotype.__size = apTab->Count() ;
	tab.tablibparam.__size = apTab->Count() ;
 
	tab.tabcoparam.__ptr = new char*[apTab->Count()*sizeof(char*)];
	tab.tabcotype.__ptr = new char*[apTab->Count()*sizeof(char*)];
	tab.tablibparam.__ptr = new char*[apTab->Count()*sizeof(char*)];
 
 
long LigTab;// ligne du tableau
 
for (LigTab = 0 ; LigTab < apTab->Count() ; LigTab ++ )
{
 	//on recupere la 1ere colonne du tableau
 	AF_char * ltabligne1 = apTab->gString(LigTab,0);
 
 	//on recupere la 2ieme colonne du tableau
 	AF_char * ltabligne2 = apTab->gString(LigTab,1);
 
	//on recupere la 3ieme colonne du tableau
 	AF_char * ltabligne3 = apTab->gString(LigTab,2);
 
 	//recopie des noms de fonctions contenues dans la 1ere ligne
 	char * nomfonc = (char *) ltabligne1 ;
 	//recopie les cotype des parametres contenus dans la 2ieme ligne
	char * cotype = (char *) ltabligne2 ;
	//recopie les libelles des parametres contenus dans la 3ieme ligne
	char * lib = (char *) ltabligne3 ;
 
     tab.tabcoparam.__ptr[LigTab] = new char[20];
     strcpy(tab.tabcoparam.__ptr[LigTab],  nomfonc );
 
     tab.tabcotype.__ptr[LigTab] = new char[20];
     strcpy(tab.tabcotype.__ptr[LigTab],  cotype );
 
     tab.tablibparam.__ptr[LigTab] = new char[20];
     strcpy(tab.tablibparam.__ptr[LigTab],  lib );
  }
return tab;
}
le code est un peu particulier car c'est pour le faire communiquer avec une page web, mais sur le principe des allocations c'est pareil.
quelqu'un pourrait-il m'aider?
Si je ne suis pas assez claire dite le moi. Merci.