Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.Net] Copia Array senza Ciclo For
Forum - C# / VB.NET - [VB.Net] Copia Array senza Ciclo For

Avatar
amreo (Normal User)
Pro


Messaggi: 93
Iscritto: 18/03/2013

Segnala al moderatore
Postato alle 15:21
Sabato, 14/12/2013
Non so come copiare un array Bidimensionale da un punto a un altro punto. es
M(5;5)

0 1 0 0 0
1 0 1 1 0
0 1 1 1 1
1 1 1 1 1
0 0 0 0 0

es voglio copiare da 2;2 a 4;4 e ottenere
0 1 1
1 1 1
1 1 1

come faccio?

(dato che lo uso in un ciclo per un gioco, voglio evitare che la velocità si abbassa un pò, quindi è meglio non usare for)

NB: questo esempio e piccolino, in realta dovrei gestire Max 100X100 Celle.
il tipo delle celle dell' array è generic.

Grazie a chi lo risolve.








Ultima modifica effettuata da amreo il 14/12/2013 alle 17:51
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 15:43
Sabato, 14/12/2013
Da dove a dove vuoi copiare i dati?

Come sono fatti effettivamente gli array (magari mostra il codice)?

Gli elementi sono byte? O altro?

Ultima modifica effettuata da nessuno il 14/12/2013 alle 15:43


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
amreo (Normal User)
Pro


Messaggi: 93
Iscritto: 18/03/2013

Segnala al moderatore
Postato alle 16:00
Sabato, 14/12/2013
da un array bidimensionale chiamato _amap

Codice sorgente - presumibilmente C# / VB.NET

  1. Dim _amap(100,100) As Type



Type è un tipo generico, probabilmente userò una structure chiamate MCell, che conterrà x,y e il tile.

comunque gli esempi potrebbere essere char

PM Quote
Avatar
amreo (Normal User)
Pro


Messaggi: 93
Iscritto: 18/03/2013

Segnala al moderatore
Postato alle 16:01
Sabato, 14/12/2013
A dimenticavo all'inizio del gioco posso sprecare tempo che voglio.

PM Quote
Avatar
tuttodiMC (Normal User)
Expert


Messaggi: 318
Iscritto: 29/10/2012

Segnala al moderatore
Postato alle 15:00
Domenica, 15/12/2013
Qui c'è qualcosa che non va. Come fai ad ottenere
0 1 1
1 1 1
1 1 1
evidenziando le coordinate 2;2 a 4;4?
con solo due indici puoi ottenere un unico elemento.
Nel caso di 2;2 otterresti il numero 1. Utilizzare un ciclo (e forse anche più di uno) secondo me è l'unica soluzione.


Assembly is the way
PM Quote
Avatar
amreo (Normal User)
Pro


Messaggi: 93
Iscritto: 18/03/2013

Segnala al moderatore
Postato alle 17:05
Domenica, 15/12/2013
Mi sono Espresso male:
io voglio ottenere un array selezionando gli elementi che vanno dalle cordinate 2;2 a 4;4, ossia
(2;2) (3;2) (4;2)
(2;3) (3;3) (4;3)
(2;4) (3;4) (4;4)


PM Quote