/
Forside
/
Teknologi
/
Udvikling
/
C/C++
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
C/C++
#
Navn
Point
1
BertelBra..
2425
2
pmbruun
695
3
Master_of..
501
4
jdjespers..
500
5
kyllekylle
500
6
Bech_bb
500
7
scootergr..
300
8
gibson
300
9
molokyle
287
10
strarup
270
Iterator i lænket liste
Fra :
Klaus Petersen
Dato :
06-04-03 12:36
Hej NG.
Jeg har implementeret en linked list, men jeg er lidt i vildrede mht.
hvordan man laver iterator til en linked list på den mest korrekte måde.
Problemet er navnligt når der slettes fra listen.
I så fald vil iteratoren blive ugyldig, i fald at den peger på det element,
der slettes ?
Hvad kan man gøre for at undgå ovenstående problem?
Klaus.
Morten S. (
06-04-2003
)
Kommentar
Fra :
Morten S.
Dato :
06-04-03 21:42
> I så fald vil iteratoren blive ugyldig, i fald at den peger på det
element,
> der slettes ?
>
> Hvad kan man gøre for at undgå ovenstående problem?
>
elementet som ønskes slettet er nummer n.
sæt iteratoren til at pege på n+1.
sæt n-1 til at pege på n+1
sæt iterator til at pege på n-1
iterator->next->next->delete
Peer Jensen (
07-04-2003
)
Kommentar
Fra :
Peer Jensen
Dato :
07-04-03 00:58
"Klaus Petersen" <ng@spectual.ra.bnaa.dk> skrev i en meddelelse
news:b6p3eu$av2$1@sunsite.dk...
> Hej NG.
>
> Jeg har implementeret en linked list, men jeg er lidt i vildrede mht.
> hvordan man laver iterator til en linked list på den mest korrekte måde.
>
> Problemet er navnligt når der slettes fra listen.
>
> I så fald vil iteratoren blive ugyldig, i fald at den peger på det
element,
> der slettes ?
>
> Hvad kan man gøre for at undgå ovenstående problem?
Eksempel:
LISTSTRUCT::iterator itr;
for (itr = myList.begin(); itr != myList.end(); ++itr)
{
itr = myList.erase(itr);
itr--;
}
--
/Peer
It's not a bug... - it's a feature!
Søg
Alle emner
Teknologi
Udvikling
C/C++
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177558
Tips :
31968
Nyheder :
719565
Indlæg :
6408924
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.