当前位置: 首页 > news >正文

资讯网站开发疫情防控数据

资讯网站开发,疫情防控数据,建立类似淘宝的网站,东莞做网站(信科网络)QPair是一个模板类,它存储一对值(key,value),可以是不同的数据类型。QPair的用法有以下几个方面: QPair的构造函数有以下几种形式: QPair():默认构造函数,创建一个空的QP…

QPair是一个模板类,它存储一对值(key,value),可以是不同的数据类型。QPair的用法有以下几个方面:

  • QPair的构造函数有以下几种形式:

    • QPair():默认构造函数,创建一个空的QPair对象。
    • QPair(QPair<TT1, TT2> &&p):移动构造函数,从另一个QPair对象p移动数据到当前对象。
    • QPair(const QPair<TT1, TT2> &p):拷贝构造函数,从另一个QPair对象p复制数据到当前对象。
    • QPair(const T1 &value1, const T2 &value2):创建一个QPair对象,其中first为value1,second为value2。

    例如:

    QPair<int, QString> p1; // 创建一个空的QPair对象
    QPair<int, QString> p2(1, "Hello"); // 创建一个QPair对象,其中first为1,second为"Hello"
    QPair<int, QString> p3(p2); // 创建一个QPair对象,从p2复制数据
    QPair<int, QString> p4(std::move(p2)); // 创建一个QPair对象,从p2移动数据
    
  • QPair的常用接口有以下几种:

    • first和second:分别表示QPair对象中的第一个值和第二个值,可以直接访问和修改。
    • qMakePair(const T1 &value1, const T2 &value2):创建一个QPair对象,其中first为value1,second为value2,等同于QPair(value1, value2)。
    • swap(QPair<T1, T2> &other):交换当前对象和另一个QPair对象other的数据。
    • operator=、operator==、operator!=、operator<、operator<=、operator>、operator>=:分别表示赋值、相等、不等、小于、小于等于、大于、大于等于操作,注意先比较first,如果相同则再比较second。
    • operator>>和operator<<:分别表示从数据流中读取和写入QPair对象,注意需要对T1和T2实现重载>>和<<。

    例如:

    QPair<int, QString> p1(1, "Hello");
    QPair<int, QString> p2 = qMakePair(2, "World"); // 等同于QPair<int, QString> p2(2, "World");
    p1.first = 3; // 修改p1的第一个值为3
    p1.second = "Qt"; // 修改p1的第二个值为"Qt"
    p1.swap(p2); // 交换p1和p2的数据
    bool b1 = (p1 == p2); // 判断p1和p2是否相等,即first和second都相等
    bool b2 = (p1 < p2); // 判断p1是否小于p2,即先比较first,如果相同则再比较second
    QDataStream ds;
    ds << p1; // 将p1写入数据流
    ds >> p2; // 从数据流中读取p2
    
  • QPair的常见用法有以下几种:

    • 作为函数的返回值,可以返回两个相关的值,而不需要定义一个结构体或类。
    • 作为容器的元素,可以存储键值对,例如QMap、QHash、QList等。
    • 作为算法的参数,可以传递两个相关的值,例如qSort、qStableSort等。

    例如:

    // 定义一个函数,返回两个整数的最大公约数和最小公倍数
    QPair<int, int> gcdAndLcm(int a, int b) {int gcd = 1; // 最大公约数int lcm = a * b; // 最小公倍数for (int i = 2; i <= qMin(a, b); i++) {if (a % i == 0 && b % i == 0) {gcd = i; // 更新最大公约数lcm = lcm / i; // 更新最小公倍数}}return QPair<int, int>(gcd, lcm); // 返回一对值
    }// 定义一个结构体,表示学生的姓名和成绩
    struct Student {QString name;int score;
    };// 定义一个比较函数,按照成绩降序排序,如果成绩相同则按照姓名升序排序
    bool compare(const Student &s1, const Student &s2) {return qMakePair(-s1.score, s1.name) < qMakePair(-s2.score, s2.name);
    }int main() {// 调用函数,获取两个整数的最大公约数和最小公倍数QPair<int, int> result = gcdAndLcm(12, 18);qDebug() << "GCD:" << result.first << "LCM:" << result.second;// 创建一个QMap容器,存储国家和首都的对应关系QMap<QString, QString> countries;countries.insert("China", "Beijing");countries.insert("Japan", "Tokyo");countries.insert("USA", "Washington");// 遍历QMap容器,输出每个QPair元素for (QPair<QString, QString> pair : countries) {qDebug() << pair.first << "->" << pair.second;}// 创建一个QList容器,存储学生的姓名和成绩QList<Student> students;students.append({"Alice", 90});students.append({"Bob", 85});students.append({"Cindy", 95});students.append({"David", 85});// 使用qSort算法,按照比较函数排序qSort(students.begin(), students.end(), compare);// 遍历QList容器,输出每个学生的信息for (Student s : students) {qDebug() << s.name << s.score;}return 0;
    }
    

    输出:

    GCD: 6 LCM: 36
    China -> Beijing
    Japan -> Tokyo
    USA -> Washington
    Cindy 95
    Alice 90
    Bob 85
    David 85
    

参考资料:

  • QPair使用
  • QPair 的用法
  • C++ pair的基本用法总结(整理)

http://www.wooajung.com/news/27684.html

相关文章:

  • 用asp做网站需要准备什么营销咨询公司排名
  • 深圳建设工程交易服务网官网龙岗重庆seo标准
  • 无限责任公司网络优化工程师主要负责什么工作
  • 做电影网站会被捉吗新人做外贸怎么找国外客户
  • 网站源码绑定域名处理福州短视频seo平台
  • 云一网站建设获客渠道有哪些
  • 个人定制网站怎么做自己的app如何接广告
  • 用websocket做网站自己创建个人免费网站
  • 做网站所需要哪方面的知识佛山网站seo
  • 网站全景看图怎么做软文怎么写比较吸引人
  • 码支付wordpress前端提升神马seo关键词自然排名
  • 重庆渝中区企业网站建设哪家好球队排名榜实时排名
  • 两学一做网站按钮图片推广引流话术
  • 招聘网官网安卓手机优化大师官方下载
  • 上海网站推广公司郑州做网站公司排名
  • 做炫光素材的网站怎样打开网站
  • 大型网站要多少钱seo搜索引擎优化工资薪酬
  • 0基础学习网站建设拼多多运营
  • 做网站公司天津市场调研报告内容
  • 云南专业网站优化广州网络推广公司有哪些
  • 有没有专业做股指的评论网站广告营销方式有哪几种
  • 东莞附近公司做网站建设多少钱郑州网站优化公司
  • 在线看免费电影网站网站多久被百度收录
  • 一个人开淘宝店容易吗网站搜索引擎优化技术
  • 宜飞思工业设计网站免费友链互换
  • 网站怎么做才美观2023年九月份新闻
  • 自己做百度网站seo综合查询什么意思
  • 台州路桥做网站的公司外贸谷歌优化
  • 西宁房地产网站建设百度95099如何转人工
  • 网站可以个人做吗灰色行业推广