Salve, ho una funzioncina che genera il seguente errore a runtime:
"vector iterator not dereferencable"
(la funzione non ha senso, ma è solo per capire il perché dell'errore)
codice:
void encode() {
string enc;
string enc_save;
while (_buffer.size()) {
enc = _buffer.front();
_buffer.erase(_buffer.begin());
if (_dict.find(enc) == _dict.end()) {
while (true) {
enc_save = enc;
enc += _buffer.front();
break;
}
}
}
buffer e dict sono dichiarati in questo modo:
codice:
vector <uint8_t> _buffer;
map <string, size_t> _dict;
Il problema è generato dalla seconda istruzione nel while più interno, ma non riesco a capire perché ..
grazie