What is the meaning of this C++ Error std::length_error
-
19-09-2019 - |
Question
While running my program I get this error:
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_S_create
Abort trap
I know that you can't do much without the code but I think that this error is too deep in the code to copy all of it. Maybe I can figure it out if I understand what this error means. Is this a sign for an issue with reading or writing at the wrong memory address?
Is there something I can do to get more information about the problem from my program?
Solution
It means you tried to create a string bigger than std::string::max_size().
http://msdn.microsoft.com/en-us/library/as4axahk(VS.80).aspx
An exception of type length_error Class is thrown when an operation produces a string with a length greater than the maximum size.
OTHER TIPS
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.