c – 如何将std :: vector转换为std :: set而不会丢失顺序

weixin_38063872 2019-09-12 11:37:05
我使用以下代码进行转换: std::set<ObjectType> s(v.begin(), v.end()); 但是,我需要保持向量元素的顺序.我怎样才能做到这一点?
...全文
309 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38066913 2019-09-12
  • 打赏
  • 举报
回复
如果没有对矢量进行排序,则不能. A std::set以升序或降序保存内容. 如果向量是有序的,那么你只需要将std :: set的比较函数设置为用于对向量进行排序的任何东西. 您可能希望看到:How to remove duplicates from unsorted std::vector while keeping the original ordering using algorithms?

430

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧