wskaźnik na wskaźnik a funkcje

0

Cześć,
mam wskaźnik na wskaźnik typu:

double** wskaznik;

wskaźnik ten jest tablicą wskaźników do zdefiniowanych już zmiennych -> czyli robię coś takiego:

double** wskaznik = new double*[n];
wskaznik[0] = &zmienna1;
wskaznik[1] = &zmienna2;
//...
wskaznik[n] = &zmiennan

oraz mam funkcję typu:

void funkcja(double* tablica)

jeśli wrzucę do funkcji powyższą tablicę (wskaźnik na wskaźnik) w ten sposób:

funkcja(*wskaznik);

to wszystko zadziała prawidłowo.

Moje pytanie jest jak należy zinterpretować taki zapis wywołania tej funkcji z takim wskaźnikiem?
Czy ja dobrze rozumiem, że ja mam tablicę wskaźników i wrzucając ją do tablicy jednocześnie wyłuskując wartości?
Czy taki zapis i takie działania są poprawne?
Jak przekazuję taką tablicę do funkcji mogę bez żadnych obaw korzystać z niej tak jak z tablicy 1 wymiarowej z wartościami typu double?
Z góry dziękuję za odpowiedzi.
pozdrawiam

0

Do funkcji trafia *wskaznik czyli wskaznik[0] czyli &zmienna1 i tyle. Zapis i działania poprawne.

0
_13th_Dragon napisał(a):

Do funkcji trafia *wskaznik czyli wskaznik[0] czyli &zmienna1 i tyle. Zapis i działania poprawne.

Dzięki.
Mam jeszcze pytanie dla pewności: w powyższym przykładzie by nie mieć wycieku pamięci jak powinienem użyć operatora delete[]?
tak:

delete[] wskaznik;

czy tak:

delete[] *wskaznik;

Bo rozumiem, że nic więcej nie usuwam - tak jak przy tworzeniu tablicy dwuwymiarowej, bo operator new był tylko raz wywołany?
pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1