TList - różnica między Extract a Delete.

0

Cześć,
googlowałem o różnicy między użyciem extract a delete w TList jednak znalazłem niemal identyczne opisy. Zarówno to jak i to usuwa element z listy i przesuwa reszte w góre.
Możecie mi podpowiedzieć czy jest różnica czy jednak jej nie ma? :)

pozdrawiam!

0

Zgłoś się do wróżbitów, oni w odróżnieniu od nas nie muszą wiedzieć o jaki język ci chodzi.

2

Delete kasuje element, extract zwraca Ci go jako wskaźnik

1
karpov napisał(a)

googlowałem o różnicy między użyciem extract a delete w TList jednak znalazłem niemal identyczne opisy.

A do dokumentacji patrzyłeś?

TList.Delete napisał(a)

Delete removes the pointer at position Index from the list, shifting all following pointers one position up (or to the left). The memory the pointer is pointing to is not deallocated.

TList.Extract napisał(a)

Extract searched for an occurrence of item, and if a match is found, the match is deleted from the list. If no match is found, nothing is deleted. If Item was found, the result is Item. If Item was not found, the result is Nil. A lnExtracted notification event is triggered if an element is extracted from the list.

Te opisy nie są identyczne i nie mogą takie być, bo wskazane metody robią zupełnie co innego; A jakbyś miał jeszcze mało namieszane w głowie, to zobacz sobie na opis metody Remove.

1 użytkowników online, w tym zalogowanych: 0, gości: 1