Cześć.
Mam utowrzoną nową dynamicznie alokowaną tablicę i chciałbym do niej przepisać wartości(do innego miejsca w pamięci) a następnie usuną starą, ale gdy uruchamiam coś takiego to nie działa tak jak powinno tzn alkouje miejsce na nową tablicę ale wartości zamiast przypisania to jakieś śmieci.
void changeSizeOfVector(int *tabValue, int *tabOffsets, int &oldSize, int newSize) {;
int *newTabOfValues = new int[newSize];
int *newTabOfOffsets = new int[newSize];
int temp=0;
if (oldSize > newSize)
temp = newSize;
if (oldSize < newSize)
temp = oldSize;
for (int i = 0; i < temp; i++) {
newTabOfValues[i] = tabValue[i];
newTabOfOffsets[i] = tabOffsets[i];
}
delete[] tabValue;
delete[] tabOffsets;
tabValue = new int[newSize];
tabOffsets = new int[newSize];
beg1 = tabValue;
beg2 = tabOffsets;
for (int i = 0; i < temp; i++) {
tabValue[i] = newTabOfValues[i];
tabOffsets[i] = newTabOfOffsets[i];
}
oldSize = temp;
delete[] newTabOfValues;
delete[] newTabOfOffsets;
}