首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Qt技巧-快速求最值

Qt技巧-快速求最值

作者头像
Qt君
发布于 2019-09-02 16:44:17
发布于 2019-09-02 16:44:17
2.1K0
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

利用求最值接口提高编程效率。

1. 求最大值

代码语言:javascript
复制
const T &qMax(const T &a, const T &b)

2. 求最小值

代码语言:javascript
复制
const T &qMin(const T &a, const T &b)

3. 求三值的中间值

代码语言:javascript
复制
const T &qBound(const T &v1, 
                const T &v2, 
                const T &v3)

4. 求列表容器的最值

  • 利用C++标准库接口
代码语言:javascript
复制
#include<algorithm>
template<class ForwardIt, class Compare>
ForwardIt std::min_element(ForwardIt first, 
                           ForwardIt last, 
                           Compare comp)
                           
ForwardIt std::max_element(ForwardIt first, 
                           ForwardIt last, 
                           Compare comp)
  • 示例
代码语言:javascript
复制
QStringList list{"1", "3", "2"};
QString maxValue = *std::max_element(list.begin(), list.end());
QString minValue = *std::min_element(list.begin(), list.end());
  • 特别地基于迭代器的容器都可以使用该方法。

5. 数组求最值

代码语言:javascript
复制
int array[] = {1, 5, 4, 3, 2, 0};
int maxValue = *std::max_element(array, 
                                 array + sizeof(array)/sizeof(array[0]));
                                 
int minValue = *std::min_element(array, 
                                 array + sizeof(array)/sizeof(array[0]));

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 1. 求最大值
  • 2. 求最小值
  • 3. 求三值的中间值
  • 4. 求列表容器的最值
  • 5. 数组求最值
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档