Semplice, un array è un tipo di riferimento, per cui se assegni un riferimento di un array ad un'altra variabile quest'ultima sarà di fatto una specie di alias della prima.Originariamente inviato da Glabrezu
Non capisco perchè/in che modo avviene la cosa.![]()
codice:int[] array=new int[10]; //Dichiara una variabile di tipo int[] (=> di fatto un puntatore ad un array di int), crea in memoria un nuovo array in grado di contenere 10 int e assegna un puntatore ad esso ad array array[1]=5; //Imposta il secondo elemento dell'array a 5 int[] array2=array; //Assegna un puntatore all'array anche ad array2. Ora array e array2 puntano allo stesso array in memoria array2[1]=10; //Imposta il secondo elemento dell'array - lo stesso array di array - a 10 Console.WriteLine(array[1]); //Visualizza il contenuto del secondo elemento dell'array, che sarà 10