c++ set容器的排序问题,,问题在代码注释中

#pragmawarning(disable:4786)#include<iostream>#include<set>#include<string>#include<f... #pragma warning(disable : 4786)
#include <iostream>
#include <set>
#include <string>
#include <functional>
using namespace std;
int main()
{
string s("university");
set<char,greater<char> > a(s.begin(),s.end());//这一行哪里有问题,为什么写成less就可以编译通过,改成greater就不行
set<char>::iterator set_it;
for(set_it=a.begin();set_it!=a.end();set_it++)
cout<<*set_it;
cout<<endl;
return 0;
}
展开
 我来答
浴彼彼慈航3499
2017-06-09 · 超过60用户采纳过TA的回答
知道答主
回答量:95
采纳率:0%
帮助的人:47.4万
展开全部
1、在什么地方调用了? 在set.insert()的时候由set内部调用的。map和set这种关联式容器,本质是一个红黑树,你给它指定一个仿函数作为元素的比较准则,然后每次插入或删除数据的时候都会调用这个比较准则来决定在哪里插入或删除。
追问
答不对题啊,大哥
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式