首页主机资讯C++中min_element能否用于自定义类型

C++中min_element能否用于自定义类型

时间2024-07-30 19:44:03发布访客分类主机资讯浏览781
导读:是的,min_element函数可以用于自定义类型,但需要提供一个自定义的比较函数或者重载<运算符来指定如何比较这些自定义类型的对象。比如可以使用lambda表达式或者自定义的比较函数作为min_element的第三个参数。示例代码如...

是的,min_element函数可以用于自定义类型,但需要提供一个自定义的比较函数或者重载< 运算符来指定如何比较这些自定义类型的对象。比如可以使用lambda表达式或者自定义的比较函数作为min_element的第三个参数。示例代码如下:

#include <
    iostream>
    
#include <
    algorithm>
    
#include <
    vector>


struct MyType {
    
    int value;

}
    ;
    

// 自定义比较函数
bool compareMyType(const MyType&
     a, const MyType&
 b) {
    
    return a.value <
     b.value;

}


int main() {
    
    std::vector<
    MyType>
 vec = {
{
3}
, {
1}
, {
4}
, {
2}
}
    ;
    
    
    auto minIt = std::min_element(vec.begin(), vec.end(), [](const MyType&
     a, const MyType&
 b) {
    
        return a.value <
     b.value;

    }
    );
    

    std::cout <
    <
     "Min element: " <
    <
     minIt->
    value <
    <
     std::endl;
    

    return 0;

}
    

上面的代码中,使用lambda表达式和自定义比较函数来比较MyType结构体对象,找出其中value值最小的对象。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: C++中min_element能否用于自定义类型
本文地址: https://pptw.com/jishu/691210.html
C++ min_element在空容器上会怎样 C++中min_element与max_element有何区别

游客 回复需填写必要信息