Вопрос

Во время запуска моей программы я получаю эту ошибку:

terminate called after throwing an instance of 'std::length_error'
  what():  basic_string::_S_create
Abort trap

Я знаю, что вы не можете многое сделать без кода, но я думаю, что эта ошибка слишком глубока в коде, чтобы копировать все это. Может быть, я смогу понять, если я понимаю, что означает эта ошибка. Является ли это признаком проблемы с чтением или написанием не в том адресе памяти?

Есть ли что -то, что я могу сделать, чтобы получить больше информации о проблеме из моей программы?

Это было полезно?

Решение

Это означает, что вы пытались создать строку, больше, чем std :: string :: max_size ().

http://msdn.microsoft.com/en-us/library/as4axahk(vs.80).aspx

Исключение класса Type Length_Error бросается, когда операция создает строку с длиной, превышающей максимальный размер.

Другие советы

I know this is a old question but I just ran into the same issue. Using Linux with gcc.

Disassembling the function showed a lot of jumps in the code, where the exception was thrown, which shouldn't be there. In the end, a Clean Build resolved the issue for me.

This is an error in debug mode with VS2005. When I change it to release mode, everything works.

Well, the vc debug runtime causes this, that's all.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top