std::unordered_map<int, int> _cache;
std::vector<std::unordered_map<int, int>::iterator> _lruList;
das funktioniertWarum kann ich den Iterator std :: unordered_map nicht erhöhen?
std::rotate(_lruList.begin(), _lruList.begin() + 1, _lruList.end());
aber nicht
std::rotate(_cache.begin(), _cache.begin() + 1, _cache.end()); // error occurs on _cache.begin() + 1 saying "error type"
die nicht wirklich Sinn für mich, weil sie beide Iteratoren sind mit einer Ausnahme für einen vector
ist und man ist für eine unordered_map
Dann bin ich ein lso versucht, diese std::rotate(_cache.begin(), _cache.begin() ++, _cache.end());
aber ich habe die folgenden Fehler: _Left: you can't assign to a variable that is const
_Right: you can't assign to a variable that is const
Ich sehe. Danke für die ausführliche Erklärung! – ygongdev