关于LIst的使用

ljxtotti 2008-03-29 11:51:38

class Pair{

public:
int small;
int big;
void insPairList(Pair);
}
void Pair::insPairList(Pair pair) {
list<Pair>::iterator plbegin = pairList.begin();
list<Pair>::iterator plend = pairList.end();
if (pair.small <= (*plbegin).small) {
// 在开始位置插入碰撞对
pairList.push_front(pair);
}
else if (pair.small > (*plend).small) {
// 在末尾插入碰撞对
pairList.push_back(pair);
}
}

上面程序错在哪了?编译能够通过,但是运行的时候老是出现错误
...全文
50 5 打赏 收藏 转发到动态 举报
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lori227 2008-03-30
  • 打赏
  • 举报
回复
最后一个用 pairList.back()
hoohag 2008-03-30
  • 打赏
  • 举报
回复
链表插入逻辑上有错误, 你还是把代码贴全吧,
list <Pair>::iterator plend = pairList.end();
你对plend 操作, 肯定会出问题
ljxtotti 2008-03-30
  • 打赏
  • 举报
回复
谢谢大家,是用(×--plend)就好了
帅得不敢出门 2008-03-30
  • 打赏
  • 举报
回复
else if (pair.small > (*plend).small)
plend指向了最后一个元素的下一个
对它解引用 无意义啊
hityct1 2008-03-30
  • 打赏
  • 举报
回复
int small;
int big;
初始化了吗?
相关推荐

63,594

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下