List 使用记录
来源:互联网 发布:知乎 全员加速中 编辑:程序博客网 时间:2024/06/15 22:13
-Introduction : 本文开始记录关于list结构的使用技巧总结,可能会涉及一些initial_list的内容
删除list中某个特定元素
- 1.遍历,最好使用begin + end的方式遍历
- 2.避免断链问题
for ( Itor = MyList.begin(); Itor != MyList.end(); ) { if ( *Itor == 4 ) { Itor = MyList.erase(Itor); //注意,这里一定要这么写 //不能写 MyList.erase(Itor) 否则出现断链问题 } else { Itor++; } }
错误记录:
(1). 删除列表元素,是一定会修改列表内容的,因此在删除函数的形参位置,不能写const关键字
void delete_element_in_list(const list<char> &list1) 这种写法,因为会修改列表元素,不行
void delete_element_in_list(const A &anA) 且A中包含要删除的list,修改了内容,不可以的
(2). 执行对象要求是const typename* &anA 的时候不能使用 “this”关键字来代替,原因是这样的内容必须是一个lvalue
- 不是很明白为什么,但是把”&”关键字删掉,const关键字保留,这里就可以填写this
- 总而言之,this就是不能成为,像普通变量那样的,顺利嵌套进 const + &的结构
this 最多只能成为const 但是不能成为 & -> 原因: 只有变量才可以使用 &的方法
问题总结:this关键字代表的是一种类似常量的 “右值”,但是&符号仅针对左值才能使用
但是右值左值的转换是很麻烦的操作,相比之下,放弃使用&符号,或者用&但是不用this划算很多
list的使用 const与&结合使用,但是单个对象就可以单独使用const 或者&
阅读全文
0 0
- List 使用记录
- ionic使用记录----列表.list
- JDK1.8 List使用心得记录
- java list.addAll方法的一些使用记录
- hibernate使用list映射,查询出来的list集合包含多个null记录
- 删除control list 记录
- list删除重复记录
- list.Contain 与 list.FindIndex()用法记录
- list使用
- List使用
- List使用
- Java List 随机取记录
- leetcode记录 Reverse Linked List
- Java List 随机取记录
- android中ListActivity使用记录Your content must have a ListView whose id attribute is 'android.R.id.list'
- [问题记录]log4j使用记录
- DataTable,List去重复记录的方法
- DataTable,List去重复记录的方法
- 微信小程序教程系列
- Ubuntu命令合集(二)
- HashMap v.s. 动态规划
- 一张图看懂小程序全生态
- class 类练习4 简单交互 / 复杂交互 / list / list的遍历
- List 使用记录
- Python网络爬虫中常用第三方库总结
- [Leetcode][python]Triangle
- jdk1.8就带有的Lambda表达式,现在1.9都发布了你不会还没用过吧
- 监控/触发text input变化的事件大全,总有一个会命中
- Class类练习 5. 藉由关系的实现 / 时间的处理
- 斯堪的纳维亚电力电子之旅
- DynamicFusion: Reconstruction and Tracking of Non-rigid scenes in real-time
- 搭建ssm框架