C++中set函数输出最后一个值

无法输出最后一个值
#include
#include
using namespace std;
int main()
{
sets;
s.insert(1);
s.insert(2);
s.insert(3);
s.insert(1);
cout << * s.end() << endl;
return 0;
}

s.end()指向尾部,最后一个元素之后,所以要--s.end()才是最后一个元素,修改如下

#include <iostream>
#include<set> 
using namespace std;
int main()
{
set<int> s;
s.insert(1);
s.insert(2);
s.insert(3);
s.insert(1);
cout<< *(--s.end())<<endl;
return 0;
}

注意用法,s.end()已经指向了最后一个元素之后的位置了

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632