持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第18天,点击查看活动详情
前言
在tablewidget的使用过程中,他的输出方式一边为无序,但是为了查看方便,所以有部分排序需求,接下来进行逐一介绍。
C++中std::sort
在C++中std::sort,但是她所对应的排序类型有限,他只能对数组,或者链表list、向量排序进行排序。
sort(参数一,参数二,排序方式)
参数一是指数组的⾸地址,⼀般写上数组名就可以,因为数组名是⼀个指针
参数2:第⼆个参数相对较好理解,即⾸地址加上数组的长度n(代表尾地址的下⼀地址),也可以直接写最后一个之后的地址 这里一定一定要注意,不能直接写需要排序的最后一个地址
参数3:默认可以不用输,但是要注意的是,不输入会默认为升序排序。也就是1,2,3 也可以输入参数为逆序
qsort
void qsort(void base,int nelem,int width,int (*fcmp)(const void ,const void *)); 参数: 1 与sort一样 输入的是数组首地址(可以直接填写名称) 2 数组中需要排序的总数 3 单个元素所占用的空间大小 4 指向函数的指针,用于确定是进行升序还是逆序
利用QMap的属性
QMap是默认的肾虚排序,我们可以把需要排序的内容以Map的形式存储,他的优点是:教育以上两种方法,他可以对多种类型进行排序
for (QMap<string,string>::iterator itmap = List.begin();itmap != List.end();itmap++)//互斥
{
}
顺序输出为升序输出
for (QMap<string,string>::iterator itmap = --List.end();itmap != --List.begin();itmap--)
{
}
反向输出为逆序输出,但是这里主义的是一定要用--List.end(),不能使用List.end()--,大家可以查询比较两者的差异性。
今天的更新到此结束,希望各位大佬批评指正!