C++/Zarządzanie pamięcią: Różnice pomiędzy wersjami

brak opisu edycji
(zamiana ProstaNawigacja->Subst:Naw)
Nie podano opisu zmian
Wektory[0] = new int *[2];
Wektory[1] = new int *[2];
Wektory[0][0] = new int; // pojedyńczapojedyncza zmienna dynamniczna! nie tablica
Wektory[0][1] = new int [5]; // zmienna tablicowa
Wektory[1][0] = new int [3];
...
// III wymiar
delete Wektory[0][0]; // kasujemy pojedyńcząpojedynczą zmienną
delete [] Wektory[0][1];
delete [] Wektory[1][0];
Zwrócić uwagę trzeba na dwie rzeczy:
<ol>
<LI>'''delete []''' używamy dla zmiennych tablicowych a '''delete''' dla pojedyńczychpojedynczych zmiennych</li>
<LI>Kolejność zwalniania wymiarów jest odwrotna niż ich tworzenia</LI>
</ol>
 
 
Drugą zaletą jest fakt, że przy okazji alokacji pamięci możemy wywołać odpowiedni konstruktor inicjalizującinicjując wartości zmiennych obiektu, np.
<pre class="lang-cpp">
Test *Test = new Test(1,2);
Anonimowy użytkownik