从 windows 到 linux(3):std::list::erase 不能用 const_iterator

../src/map_server/Team/RandomTeamManager.cpp: In member function ‘void RandomTeamManager::_HandleConfirmTeam(uint32, bool)’:
../src/map_server/Team/RandomTeamManager.cpp:138: error: no matching function for call to ‘std::list<RandomQueueEntry, std::allocator<RandomQueueEntry> >::erase(std::_List_const_iterator<RandomQueueEntry>&)’
/usr/include/c++/4.4/bits/list.tcc:107: note: candidates are: std::_List_iterator<_Tp> std::list<_Tp, _Alloc>::erase(std::_List_iterator<_Tp>) [with _Tp = RandomQueueEntry, _Alloc = std::allocator<RandomQueueEntry>]
/usr/include/c++/4.4/bits/stl_list.h:1092: note:                 std::_List_iterator<_Tp> std::list<_Tp, _Alloc>::erase(std::_List_iterator<_Tp>, std::_List_iterator<_Tp>) [with _Tp = RandomQueueEntry, _Alloc = std::allocator<RandomQueueEntry>]
 
改成使用 iterator 删除,OK
std::list 是 C++ STL 中的一个容器,其提供了以下接口: 1. 构造函数 - list() : 默认构造函数 - list(size_t n, const T& val = T()) : 构造一个大小为 n 的 list,每个元素都初始化为 val - list(const list& lst) : 复制构造函数 - list(list&& lst) noexcept : 移动构造函数 2. 迭代器 - begin() : 返回指向 list 开头的迭代器 - end() : 返回指向 list 结尾的迭代器 - rbegin() : 返回指向 list 结尾的反向迭代器 - rend() : 返回指向 list 开头的反向迭代器 3. 容量 - empty() : 判断 list 是否为空 - size() : 返回 list 中元素的个数 - max_size() : 返回 list 大小的最大值 4. 访问元素 - front() : 返回 list 中第一个元素的引用 - back() : 返回 list 中最后一个元素的引用 5. 修改容器 - push_front(const T& val) : 在 list 开头插入一个元素 - push_back(const T& val) : 在 list 末尾插入一个元素 - pop_front() : 删除 list 开头的元素 - pop_back() : 删除 list 末尾的元素 - insert(iterator pos, const T& val) : 在 pos 处插入一个元素 - erase(iterator pos) : 删除 pos 处的元素 - erase(iterator first, iterator last) : 删除 [first, last) 区间内的元素 - clear() : 清空 list 中的所有元素 6. 其他操作 - splice(iterator pos, list& lst) : 将 lst 中所有元素移动到 pos 前面 - remove(const T& val) : 删除 list 中所有值为 val 的元素 - sort() : 对 list 进行排序 - reverse() : 反转 list 中所有元素的顺序
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值