Just nu i M3-nätverket
Gå till innehåll

alla arrays?


Jonas Innala

Rekommendera Poster

Finns det något snabb sätt att gå igenom alla arrayer(för att sätta in nya saker i arrayerna) i en variabel? för att jag vill kunna ta bort och sätta dit nya arrayer så då funkar ju inte

for(i = 0;i<sizeof(array);i++) för då blir det ju ett gap om jag tex tar bort array[2] så då går ju for(i = 0;i<sizeof(array);i++) igenom array[2] helt i onödan eller går det att göra dom i ordning efter att ha tagit bort den.

jag vill inte ha ett enkelt sätt bara ultra snabbt.

 

Länk till kommentar
Dela på andra webbplatser

Vet inte om jag förstår din fråga riktigt, men om du vill slippa loopa genom arrayer så kanske det skulle vara intressant med hashtabeller? (associativa arrayer)

 

Länk till kommentar
Dela på andra webbplatser

En std::vector torde göra grovjobbet åt dig, men huruvida det är snabbt med vektor.erase eller inte vete tusan - någon?

 

Annars kanske du är ute efter en länkad struktur istället? Om du alltid går igenom datan från början till slut, inga 'random access'-anrop mitt i datastrukturen förutom vid radering av enskilda element, så kan jag tänka mig att det kan vara ett bra alternativ. std::list tror jag datatypen i STL för C++ heter, om du inte vill skriva en egen.

 

Dequeue och vector:

http://www.gotw.ca/gotw/054.htm

 

...annars, får du väl inuti din for-loop ha ett villkor om att elementet inte ska vara 'tomt' för att det ska gås igenom. Att loopa igenom en array är juh trots allt hyfsat snabbt så om det blir några bommar här å där kanske inte gör så mycket?

 

--

.Wey - filosoferar

 

Future Hero Next Generati0n

 

[inlägget ändrat 2003-01-28 19:06:08 av Weyland]

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...