|
表格线识别通用库文档
|
列表类 更多...
#include <list.hpp>


友元 | |
| template<typename U > | |
| List< U > | operator+ (const List< U > &list1, const List< U > &list2) |
| 列表类重载加法运算符 | |
| template<typename U > | |
| std::ostream & | operator<< (std::ostream &out, const List< U > &list) |
| 列表类重载输出流运算符 | |
列表类
列表容器公有继承自 std::vector,能够在固定的时间内访问任意顺序的单个元素,并提供了多种便捷的方法。
| T | 列表容器元素类型 |
统计满足指定条件的元素个数
该方法用于统计列表中满足指定条件的元素个数。需要提供一个判断函数,用于判断列表中的元素是否符合指定条件。
| FUNC | 判断函数类型,接受一个列表项作为参数,返回bool值,形式为(const T& value) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 判断是否指定值的函数,返回true时表示是,反之不是 |
统计列表中指定值的出现次数
该方法用于统计列表中指定值出现的次数。遍历整个列表,对每个元素与指定值进行比较,如果相等则计数器加1。最终返回指定值在列表中出现的总次数。
| value | 要统计出现次数的值 |
将列表中所有元素填充为指定值
该方法遍历整个列表,将其中所有的元素设置为指定的填充值。
| value | 要填充的值 |
过滤列表项
该方法用于过滤列表中的项,根据传入的过滤函数判断是否保留该项,将符合条件的项添加到新的列表中并返回。
| FUNC | 过滤函数类型,接受一个列表项参数,返回bool值,形式为(const T& item) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型。 |
| func | 过滤函数,当返回true时保留该项,反之则过滤 |

判断列表中是否包含满足指定条件的值
该方法用于判断列表中是否存在满足指定条件的值。需要提供一个判断函数,用于判断列表中的元素是否符合指定条件。内部调用了 Index 方法来查找满足条件的值的索引位置,若索引小于列表长度,则说明存在这样的值。
| FUNC | 判断函数类型,接受一个列表项作为参数,返回bool值,形式为(const T& value) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 判断是否指定值的函数,返回true时表示是,反之不是 |
| true | 列表中存在满足条件的值 |
| false | 列表中不存在满足条件的值 |
判断列表中是否包含指定值
该方法用于判断列表中是否包含指定的值。内部调用了 Index 方法来查找指定值的索引位置,若索引小于列表长度,则说明列表中包含这个值。
| value | 要判断是否存在的值 |
| true | 列表中包含指定值 |
| false | 列表中不包含指定值 |
查找指定值在列表中的索引
该方法用于在列表中查找满足指定条件的值的索引位置,采取的策略是自左向右逐一检索。一旦发现首个满足条件的元素,便立即返回该元素的索引值。另外需要提供一个判断函数,用于判断列表中的元素是否符合指定条件。
| FUNC | 判断函数类型,接受一个列表项作为参数,返回bool值,形式为(const T& value) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 判断是否指定值的函数,返回true时表示是,反之不是 |
| from_index | 从指定索引位置开始查找 默认为 0 |
查找指定值在列表中的索引
此方法用于在列表中查找指定值的索引位置,采取的策略是自左向右逐一检索。一旦发现首个满足条件的元素,便立即返回该元素的索引值。
| value | 要查找的值 |
| from_index | 从指定索引位置开始查找 默认为 0 |
查找指定值在列表中的索引
该方法用于在列表中查找满足指定条件的值的索引位置,采取的策略是自右向左逐一检索。一旦发现首个满足条件的元素,便立即返回该元素的索引值。另外需要提供一个判断函数,用于判断列表中的元素是否符合指定条件。
| FUNC | 判断函数类型,接受一个列表项作为参数,返回bool值,形式为(const T& value) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 判断是否指定值的函数,返回true时表示是,反之不是 |
| from_index | 从指定索引位置开始查找 默认为 UINT_MAX,即从最后一个开始 |
查找指定值在列表中的索引
此方法用于在列表中查找指定值的索引位置,采取的策略是自右向左逐一检索。一旦发现首个满足条件的元素,便立即返回该元素的索引值。
| value | 要查找的值 |
| from_index | 从指定索引位置开始查找 默认为 UINT_MAX,即从最后一个开始 |
列表项映射
该方法用于对列表中的每个元素进行映射处理,根据传入的映射函数,返回映射后的新列表。
| U | 映射值类型,支持编译器自行推导类型 |
| FUNC | 映射函数类型,接受列表项作为参数,返回映射后的值,形式为(const T& item) -> U,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 映射函数,返回映射后的值 |
求列表中的最大值
该方法用于获取列表中的最大元素。
求列表中的最大值
该方法用于获取列表中的最大元素,并根据传入的比较函数进行比较。
| FUNC | 比较函数类型,接受两个列表项作为参数,返回bool值,形式为(const T& item1, const T& item2) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 比较函数,返回 true 时更新第二个列表项参数item2作为最大值,反之不更新 |
求列表中的最小值
该方法用于获取列表中的最小元素。
求列表中的最小值
该方法用于获取列表中的最小元素,并根据传入的比较函数进行比较。
| FUNC | 比较函数类型,接受两个列表项作为参数,返回bool值,形式为(const T& item1, const T& item2) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 比较函数,返回 true 时更新第一个列表项参数item1作为最小值,反之不更新 |
过滤列表项
该方法用于过滤列表中的项,根据传入的过滤函数判断是否保留该项,将符合条件的项添加到新的列表中并返回。
| FUNC | 过滤函数类型,接受一个列表项参数,返回bool值,形式为(T& item) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型。 |
| func | 过滤函数,当返回true时保留该项,反之则过滤 |
列表项映射
该方法用于对列表中的每个元素进行映射处理,根据传入的映射函数,返回映射后的新列表。
| U | 映射值类型,支持编译器自行推导类型 |
| FUNC | 映射函数类型,接受列表项作为参数,返回映射后的值,形式为(const T& item) -> U,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 映射函数,返回映射后的值 |
累计列表项
该方法用于对列表中的所有元素进行累积处理,根据传入的累计函数和初始值,返回最终累积后的值。
| U | 累计值类型,支持编译器自行推导类型 |
| FUNC | 累计函数类型,接受当前累计值和列表项作为参数,返回累计后的值,形式为(U accumulator, T& item) -> U,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 累计函数 |
| initial_value | 累计初始值 默认为 U{} |
列表类重载加等于运算符
该方法用于重载列表的加等于运算符,实现列表的拼接功能。将另一个列表中的元素逐一添加到当前列表的末尾。
| list | 另一个列表,将其内容添加到当前列表的末尾 |
按序获取列表中指定索引的元素
该方法实现按照大小进行排序,默认从小到大,然后找到列表中第index个元素(index从 0 开始)。
| index | 要查找的元素索引,从 0 开始 |
index个元素的迭代器(如果index超出范围,则返回结束迭代器)按序获取列表中指定索引的元素
该方法实现按照大小进行排序,默认从小到大,然后找到列表中第index个元素(index从 0 开始)。需要提供一个比较函数,根据其返回值确定是否交换两个元素的位置。
| FUNC | 比较函数类型,接受两个列表项作为参数,返回bool值,形式为(const T& item1, const T& item2) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| index | 要查找的元素索引,从 0 开始 |
| func | 比较函数,返回 false 时交换两值位置,反之不交换 |
index个元素的迭代器(如果index超出范围,则返回结束迭代器)累计列表项
该方法用于对列表中的所有元素进行累积处理,根据传入的累计函数和初始值,返回最终累积后的值。
| U | 累计值类型,支持编译器自行推导类型 |
| FUNC | 累计函数类型,接受当前累计值和列表项作为参数,返回累计后的值,形式为(U accumulator, const T& item) -> U,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 累计函数 |
| initial_value | 累计初始值 默认为 U{} |
对列表中的元素进行反转
该方法用于将列表中的元素进行反转操作,如果列表是升序排列的,那么反转后将变成降序排列的。
切片提取列表中指定范围的元素
该方法根据起始位置和结束位置从原列表中提取出一个新的列表,并返回该新列表。起始位置和结束位置都是以索引值表示,起始位置包含在切片内,结束位置不包含在切片内,默认结束位置为列表长度。
| start | 起始位置 |
| end | 结束位置(不包括结束位置本身) 默认为 UINT_MAX,即列表长度 |
对列表进行排序
该方法使用 std::sort 对列表进行排序,默认使用 < 运算符进行比较,根据比较的结果确定是否交换两个元素的位置。
对列表进行排序
该方法利用 std::sort 对列表进行排序。需要提供一个比较函数,根据其返回值确定是否交换两个元素的位置。
| FUNC | 比较函数类型,接受两个列表项作为参数,返回bool值,形式为(const T& item1, const T& item2) -> bool,支持函数指针、lambda 表达式、仿函数等,通常由编译器自行推导类型 |
| func | 比较函数,返回 false 时交换两值位置,反之不交换 |
列表类重载加法运算符
该方法用于重载列表的加法运算符,实现两个列表的拼接功能。将两个列表中的元素合并到一个新的列表中,并返回新的列表。
| U | 列表中存储的元素类型 |
| list1 | 第一个列表 |
| list1 | 第二个列表 |