Hallo!
Der folgende Code wirft einen fehler:
rna* annealer::anneal(rna strand1, rna strand2, const rna & opponent)
{
if(tryAnneal(strand1, strand2, opponent)) {
std::cout << "true" << std::endl;
//in der nächsten zeile wird der fehler geworfen
strand1.getStrand().insert(strand1.getStrand().begin(), strand2.getStrand().begin(), strand2.getStrand().end());
strand1.isAnnealed = true;
rna* str = &strand1;
return str;
}
//....
return NULL;
}
rna enthält einen vector, der mit getStrand() zurückgegeben wird…
Fehlermeldung: terminate() called after throwing an instance of std::length_error
what(): vector::_M_range_insert
length_error? die gibts doch wenn man über max_size allokieren will? meine vectoren sind um die 10 elemente groß…
hat jemand ideen warum der fehler auftritt?