首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >std::list::排序和指向元素的指针

std::list::排序和指向元素的指针
EN

Stack Overflow用户
提问于 2013-02-24 22:16:44
回答 2查看 197关注 0票数 0

如果我在列表上调用sort()方法,那么指向std::list元素的指针是否仍然有效?这个(标准)有保证吗?它似乎可以在Visual Studio 2012下工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-24 22:22:44

摘自"Working Draft C++,2012-11-02“

23.3.5.5 list operations list.ops

void sort();

template <class Compare> void sort(Compare comp);

28要求:operator< (用于第一个版本)或comp (用于第二个版本)应定义严格的弱排序(25.4)。

29效果:根据 Compare函数或函数对象对列表进行排序。不影响迭代器和引用的有效性。

30备注:稳定。

31复杂度:大约N个对数(N)比较,其中N == size()

票数 5
EN

Stack Overflow用户

发布于 2013-02-24 22:19:16

排序不会移动内存中列表的元素,只会更改下一个和前一个链接指针。应该没问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15052586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档