我有一个 std::vector<std::string>
其中将包含数字和字符(单个字符)。我希望首先对数字进行排序,然后对字符进行排序...所以我有一个困惑的字符串 vector 作为输入,排序后我希望它像 1,2,3,5,7,9,10,A, B、C、D。
但我想 sort 也会比较输入的大小,因此如果我的 vector 有不同长度的数字,我会得到错误的输出。例如,执行 std::sort (vec.begin(),vec.end())
在 9,4,5,2,10,11,A,D,B,E,C
返回 10,11,2,4,5,9,A,B,C,D,E
.
我该如何纠正我的错误以及我遗漏了什么?
谢谢你,
萨彦
最佳答案
编写一个非字典顺序的比较例程并将其与迭代器一起传递给 std::sort。
关于c++ - std::sort 在 std::vector<std::string> 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3401385/