Perché fare riferimento agli array, invece di copiarli, è cattivo? [chiuso]

-1

È perché il vantaggio di copiare un array in un altro array è che è possibile aggiungere i dati all'array stesso piuttosto che fare riferimento a una particolare posizione di memoria?

    
posta hmmm304949 06.04.2016 - 11:29
fonte

2 risposte

3

Why is referencing arrays, instead of copying them, bad?

Non è male. È solo diverso.

A volte hai bisogno di per copiare un array:

  • potrebbe essere necessario essere in grado di modificare una copia dell'array senza che le modifiche siano visibili nell'altra copia
  • potresti aver bisogno di impedire che la versione principale dell'array venga modificata da qualunque cosa hai passato alla copia.

In altri casi, è meglio (o necessario) non copiare l'array:

  • se si passa una matrice a qualcosa che non ha bisogno di / non sta per apportare alcuna modifica, quindi passare un riferimento alla matrice originale è più efficiente.

  • potresti vuoi modifiche da apportare allo stesso array in luoghi diversi e quelle modifiche saranno visibili.

Dovresti scegliere tra il passaggio del riferimento e la creazione / passaggio di una copia in base alle esigenze della tua applicazione ... non sulle nozioni errate di "buono" e "cattivo" di qualcuno.

    
risposta data 06.04.2016 - 13:07
fonte
0

L'intento è importante, se stai facendo un altro riferimento, quello che hai sono due variabili che si riferiscono alla stessa memoria, qualsiasi modifica apportata a una si rifletterà in un'altra. quando copi array, ottieni due array diversi che sono indipendenti.

    
risposta data 06.04.2016 - 12:56
fonte

Leggi altre domande sui tag