C++容器"set"中.second的意义

请教如下代码中,"!cand.insert(nums[i]).second"里的.second代表什么?.second==1是不是代表插入成功?... 请教如下代码中,"!cand.insert(nums[i]).second"里的.second代表什么?.second==1 是不是代表插入成功? 展开
 我来答
wanglixin1001
推荐于2016-04-27 · TA获得超过4174个赞
知道大有可为答主
回答量:1758
采纳率:80%
帮助的人:874万
展开全部
set的带有一个键参数的insert版本函数返回pair类型对象,该对象包含一个迭代器和一个bool值,迭代器指向拥有该键的元素,而bool值表明是否添加了元素。
这里的second即是返回的pair里的bool值。
追问
我后来查了下cplusplus, 里面有个例子:
std::set myset;

std::pair::iterator,bool> ret;

ret = myset.insert(20);

if (ret.second==false) it=ret.first;

让我弄懂了我的猜测是对的。不过还是many thanks for your answer.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式