在set容器中利用find()和end()查找元素的简单使用

以下是利用容器set的begin()end()以及find()函数来打印元素并查找元素的简单代码示例

#include <iostream>
#include <set>

int main() {
    std::set<int> mySet = {1, 2, 3, 4, 5};

    std::cout<<"Elements in the set:";
    auto it=mySet.begin();
    while (it != mySet.end())
    {
        std::cout<<*it<< "  " ;
        it++;
    }
    std::cout<<std::endl;

    // 查找元素
    auto endIter = mySet.end();
    std::cout << "end iter add =" << &(*endIter) << std::endl;

    std::cout<<"查找元素3"<<std::endl;
    auto found = mySet.find(3);
    std::cout << "found=" << &(*found) << std::endl;


   // 检查元素是否存在
    if (found != mySet.end()) {
        std::cout << "元素存在: " << *found << std::endl;
    } else {
        std::cout << "元素不存在." << std::endl;
    }

    // 尝试查找不存在的元素
    auto notFound = mySet.find(10);
    std::cout<<"查找元素10"<<std::endl;
    std::cout << "notFound=" << &(*notFound) << std::endl;



    if (notFound != mySet.end()) {
        std::cout << "元素存在: " << *notFound << std::endl;
    } else {
        std::cout << "元素不存在." << std::endl;
    }

    return 0;
}

输出结果:
Elements in the set:1  2  3  4  5  
end iter add =0x7ffd078f22d8
查找元素3
found=0x557845dec330
元素存在: 3
查找元素10
notFound=0x7ffd078f22d8
元素不存在.

上面代码中因为 std::set::find() 在找到元素时返回指向该元素的迭代器,而在未找到时返回集合的末尾迭代器(mySet.end())
所以 found 指向元素 3 的迭代器,而 notFound 指向集合的末尾迭代器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kxwang_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值