| 236 | } |
| 237 | |
| 238 | TItem* RemoveIfOverflown() { |
| 239 | TItem* deleted = nullptr; |
| 240 | if (TotalSize > MaxSize && ItemsAmount > 1) { |
| 241 | deleted = GetLeastFrequentlyUsed(); |
| 242 | Erase(deleted); |
| 243 | } |
| 244 | return deleted; |
| 245 | } |
| 246 | |
| 247 | TItem* GetLeastFrequentlyUsed() { |
| 248 | typename TListType::TIterator it = List.Begin(); |