terminate called after throwing an instance of 'std::out_of_range' what(): vector::_M_range_check
2014-01-08 20:44
627 查看
编译时没有报错,运行时报错:
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
内存读取越界。
解释1:for example:
const std::string sTest( "test" );
sTest.substr( 0, 10 );
will raise the same exception, since you ask 10 characters, but only 5 ( sTest.length()) ) are available.
调试过,正常运行,无报错。
解释2:
Chances are you did something like:
std::string s("foo");
s.substr(5,1); //the length of the string is 3, 5 is out of bounds
调试过,确实会报错,out_of_range
转自:http://blog.csdn.net/wangxmin2005/article/details/7754277
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check
内存读取越界。
解释1:for example:
const std::string sTest( "test" );
sTest.substr( 0, 10 );
will raise the same exception, since you ask 10 characters, but only 5 ( sTest.length()) ) are available.
调试过,正常运行,无报错。
解释2:
Chances are you did something like:
std::string s("foo");
s.substr(5,1); //the length of the string is 3, 5 is out of bounds
调试过,确实会报错,out_of_range
转自:http://blog.csdn.net/wangxmin2005/article/details/7754277
相关文章推荐
- 运行时错误: terminate called after throwing an instance of 'std::out_of_range'
- terminate called after throwing an instance of 'std::out_of_range'
- ubuntu12.04连接服务器的时候出现错误“terminate called after throwing an instance of 'std::runtime_error' what(”
- [aidl] terminate called after throwing an instance of 'std::logic_error' [aidl] what(): basic_string
- terminate called after throwing an instance of 'std::out_of_range' what(): basic_string::substr
- terminate called after throwing an instance of 'std::logic_error' [aidl] what(): basic_string
- terminate called after throwing an instance of 'std::string'
- 运行时错误:terminate called after throwing an instance of 'std::logic_error'
- terminate called after throwing an instance of 'boost::thread_resource_error' what()
- Tensorflow:terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc
- LeetCode terminate called after throwing an instance of 'std::logic_error' what(): basic_string::
- terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_S_construct
- 解决问题: terminate called after throwing an instance of 'std::runtime_error' what(): locale::facet::
- terminate called after throwing an instance of 'std::regex_error'
- terminate called after throwing an instance of 'std::bad_alloc
- 运行时错误:terminate called after throwing an instance of 'std::logic_error'
- terminate called after throwing an instance of 'std::length_error
- Deal with the error "terminate called after throwing an instance of 'std::bad_alloc'"
- terminate called after throwing an instance of 'std::regex_error'(C++11)
- linux下的C++编程错误(一):terminate called after throwing an instance of ‘std::ios_base::failure' wha