Mam pytanie. Ponizszy kod jest tylko przykladem , nie bierzcie pod uwage jego logicznemu zastosowaniu. Czy rekurencyjnie wywolana funkcja w ktorej dynamicznie tworzy sie tablice a nastepnie zwalnia ta przekazana w argumencie spowoduje jakis wyciek pamieci , albo naruszenie ochrony pamieci?
int** fun(int **tab){
if(tab[0][0]==0) return tab;
int **tab2;
tab2=new int*[1];
tab2[0]=new int[1];
tab[0][0]=tab[0][0]/2;
tab2[0][0]=tab[0][0];
delete [] tab[0];
delete [] tab;
fun(tab2);
int main()
{
int **tab=new int*[1];
tab[0]=new int[1];
tab[0][0]=10;
int **wynikowa;
wynikowa=fun(tab);
cout << wynikowa[0][0];
return 0;
}
}