C++ 自己在标准::列表中的比较
C++ Own comparison in std::list
我的程序和列表有一些结构。它是这样的:
struct person{
string name;
char relation;
string child;
}
typedef std::list < person > listP;
listP MyList;
我想使用 std::list::sort()
按person.name
对这个列表进行排序,但我不知道如何处理它。我试图找到如何使用 STL 自定义比较,但现在对我来说没什么奇怪的,所以请解释一下这个人性化:P
list::sort
需要一个谓词函数对象。
您可以尝试:
std::list<person> people;
// Add some people...
people.sort([](const person &left, const person &right)
{
return left.name < right.name;
});
另请参阅:
对自定义类型的列表进行排序
相关文章:
- 如何在两个列表中比较和获取非包含值
- 使用自定义比较函数在类内进行列表排序
- 错误:运算符 [] 不匹配。在比较列表中的 int 和 int 时<int>,
- 使用不遵循"严格弱排序"的比较功能对列表进行排序
- 将用户输入的术语与 txt 文件中的列表进行比较
- 空列表迭代器比较始终为真
- 有效比较整数列表与C++中给定的整数
- 通过单词列表将两个字符串移动以比较每个单词
- 如何比较C 列表中的两个连续元素
- C++比较向量和列表
- unordered_set与链接列表之间的性能比较
- 如何比较容器和初始值设定项列表以查看它们是否相等?
- C++ 比较 2 个不同列表中的值以使用 2 for 循环摆脱重复的数字。无法正确检测重复项
- 带有额外参数的排序列表以进行比较功能
- 有没有更简单的方法可以做到:if(num1 > num2 && num1 > num3),以获得更大的变量列表进行比较?
- 比较两个不同列表的内容
- 将STD ::指针列表与比较器的对象列表
- 比较列表并给我列表 a 中没有的列表 b 中的内容
- 比较列表<string>和向量<string>中的字符串元素
- 比较列表迭代器是O(n)吗