Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: Haddd en 04 de Octubre de 2004, 09:46:51 AM

Título: Duda De Arrays En C#
Publicado por: Haddd en 04 de Octubre de 2004, 09:46:51 AM
 Vereis, quiero copiar un array así:


int[] a=new int[20];

int[] b=new int[10];

b=a;


Es decir, quiero copiar los 10 primero elementos de a en b. Esto no me da error, pero me provoca un error de memoria más tarde. Lo he corregido con un bucle y he resuelto el problema, pero "supongo" que habrá una forma mejor de hacerlo...

¿y esa forma es...?
Título: Duda De Arrays En C#
Publicado por: Warchief en 04 de Octubre de 2004, 10:08:01 AM
 Has probado con Copy?

http://msdn.microsoft.com/library/default....sscopytopic.asp


Citar
Copies a range of elements from an Array starting at the first element and pastes them into another Array starting at the first element. The length is specified as a 32-bit integer.
[C#] public static void Copy(Array, Array, int);

Copies a range of elements from an Array starting at the specified source index and pastes them to another Array starting at the specified destination index. The length and the indexes are specified as 32-bit integers.
[C#] public static void Copy(Array, int, Array, int, int);


Porque << The sourceArray and destinationArray parameters must have the same number of dimensions >> se refiere al Rango, no a la Longitud, no? (no he probado).
Bueno, parece que se refiere a longitud (y para multidimensionales los serializa en un vector), pero parece que servirá. Prueba a ver y nos cuentas:
http://msdn.microsoft.com/library/default....scopytopic3.asp
Título: Duda De Arrays En C#
Publicado por: Haddd en 04 de Octubre de 2004, 10:26:04 AM
 Array.Copy funciona genial. Muchas gracias (ole)