Witam,
Mam następujące pytanie. Otóż piszę program i potrzebuję zwrócić tablicę wielowymiarową przez funkcję. Chciałbym się zapytać, który sposób jest poprawny, czy może oba są poprawne (bo oba działają).
//1 sposob
int **funkcja(int**tablica, int rozmiar){
....
return tablica;
}
..
//tworze tablice wielowymiarowa
int **tablica = new int *[rozmiar];
for(i = 0; i < rozmiar; i++)
tablica[i] = new int[15];
//wywolanie funkcji
tablica = funkcja(tablica, rozmiar)
//2 sposob
int funkcja(int **tablica, int rozmiar){
....
return **tablica;
}
..
//tworze tablice wielowymiarowa
int **tablica = new int *[rozmiar];
for(i = 0; i < rozmiar; i++)
tablica[i] = new int[15];
//wywolanie funkcji
**tablica = funkcja(tablica, rozmiar)
Jeszcze chcialbym sie dowiedziec czy takie zwalnianie pamieci jest poprawne, czy zwalnia tablice i wszystkie jej wymiary?
delete[] tablica;
Czy nalezy zwalniac w ten sposob?
delete[] *tablica;
delete[] tablica;