Witam. Otóż natknąłem na pewien problem. Podczas usuwania tablicy dynamicznej zostaje zastąpiony tylko pierwszy element tablicy liczbą 0. Mógłby mi ktoś powiedzieć czy to jest normalne czy może nie? I jak zrobić żeby usunęło całą tablicę a nie tylko jeden element.
#include <iostream>
using namespace std;
#define SIZE 5
void wypiszTablice(int tab[], int rozmiar);
int *stworzTablice(int elements[], int rozmiar);
void usunTablice(int tab[]);
int main()
{
int arr[SIZE] {1,2,3,4,5};
int *sTablice = stworzTablice(arr, SIZE);
wypiszTablice(sTablice, SIZE);
usunTablice(sTablice);
wypiszTablice(sTablice, SIZE);
return 0;
}
void wypiszTablice(int tab[], int rozmiar)
{
for(int i = 0; i < rozmiar; i++)
{
cout << "tab[" << i << "] = " << tab[i] << "\n";
}
}
void usunTablice(int tab[])
{
delete[] tab;
}
int *stworzTablice(int elements[], int rozmiar)
{
int *tab = new int[rozmiar];
for(int i = 0; i < rozmiar; i++)
{
tab[i] = elements[i];
}
return tab;
}