im looking for a way to resize an array e.g. from myarray[10,10] to myarray[20,20] while preserving the contents , by all accounts the best way is to use the array.copy. i found a snippet of code on a answer elsewhere which says :-
Code:
public static void ResizeArray<T>(ref T[,] original, int cols, int rows)
{
T[,] newArray = new T[rows, cols];
//copy the contents of the old array to the new one
Array.Copy(original, newArray, original.Length);
//set the original to the new array
original = newArray;
}
how do i pass my array into it ?
Resize_array<int>( [,] myarray , new rows, newcols)
??
i can see how the swap works but what happens to the old array, does garbage collection dispose of it or should i be handling that.
Does anyone have a better more efficient way ?
tia
Last edited by jonnydexter; February 6th, 2013 at 04:07 PM.
BioPhysEngr http://blog.biophysengr.net
--
All advice is offered in good faith only. You are ultimately responsible for effects of your programs and the integrity of the machines they run on.
Bookmarks