"std:copy算法:" QVector("one", "two", "three")
"std::equal算法:" equal: true
"std::find算法:" "two"
"std::fill算法:" ("eleven", "eleven", "eleven")
"std::count算法:" count of 6: 3
"std::lower_bound算法:返回第一个出现5的位置,如果没有5,则返回5应该在的位置" (3, 3, 5, 6, 6, 6, 8) "std::sort排序算法:使用快速排序算法对list2a进行升序排序,排序后两个12的位置不确定" (6, 12, 12, 33, 68)
"std::stable_sort算法:使用稳定排序算法对list2a进行排序" (6, 12, 12, 33, 68)
"std::greater算法:可以在qSort()算法中使其反向排序" (68, 33, 12, 12, 6)
"swap交换算法:" pi: 2.71 e: 3.14
在头文件中,Qt提供了一些全局的模板函数,这些函数是可以使用在容器上的十分常用的算法。我们可以在任何提供了STL风格迭代器的容器类上用这些算法,包括QList、QLinkedList、QVector、QMap和QHash。如果在目标平台上可以使用STL,那么可以使用STL的算法来代替Qt的这些算法,因为STL提供了更多的算法,而Qt只提供了其中最重要的一些算法。
在历史上,Qt曾经提供的函数是许多STL算法函数的直接等价物。从Qt 5.0开始,QT鼓励我们直接使用STL中可用的实现;大多数Qt已经被弃用(尽管它们仍然可以用于保持旧的代码编译,但会有警告)。
大多数情况下,使用废弃的Qt算法函数的应用程序可以很容易地移植到使用等效的STL函数。你需要 添加#include 头文件,并将Qt函数替换为STL对应函数,如下表所示。
#include
//src7_11 通用算法
#include
#include
#include
#include
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QStringList q_stringlist;
q_stringlist
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?