问题描述
我正在尝试对C ++中的字符串数组进行排序,但出现以下错误消息:
terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_construct null not valid
以下程序导致上一个错误。当v
有17个元素时出现错误,但是当v
的元素较少时,一切正常。
有人可以指出我的问题吗?我正在使用 gcc版本7.5.0(Ubuntu 7.5.0-3ubuntu1〜18.04)
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
bool comp (string s1,string s2) {
if (s1.size() < s2.size())
return false;
else
return true;
}
int main () {
vector<string> v = { "a","a","a" };
sort(v.begin(),v.end(),comp);
return 0;
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)