STL容器判空与指针保护问题
来源:互联网 发布:erp管理系统源码 编辑:程序博客网 时间:2024/06/15 00:03
容器判空
- 问题:写代码通过CI的cppcheck,检测出性能问题。定位到容器的判断
std::list<T> myList;// some code // 判空if (0 != list.size()) { // dosomething}
- 原因是,对于std::list,size()的复杂度是O(n),empty的复杂度是O(1)
- 修改后代码
std::list<T> myList;// some code // 判空if (!list.empty()) { // dosomething}
指针保护
- 问题:写代码时,没有对指针判空,就直接调用指针的函数。
function(){ // some code m_pointer->func(); // some code }
- 修改后代码如下
function(){ // some code if ( null != m_pointer) { m_pointer->func() } else { // some code for pointer is null } // some code }
总结
- 克服小问题,养成好的编码风格。
阅读全文
0 0
- STL容器判空与指针保护问题
- 关于指针的判空问题
- 智能指针与STL容器
- javascript判空问题
- mybatis判空问题
- 字符串判空问题
- 关于NullPointException空指针异常的保护问题
- Lotus附件判空问题
- 关于简单的指针判空
- C++指针delete是否需要判空
- stl容器内指针元素的使用与释放
- 关于字符串的判空问题
- 字符串判空出现的问题
- 安卓字符串判空的问题
- 智能指针容器及STL容器
- 机房重构——清空与判空
- 【留坑】UVA246 模拟题,STL容器组合_deque&&(set判重 OR hash判重)
- 分配器与STL容器
- platform总线--从设备找到驱动的过程
- ML 中Cost function为什么要除以2
- java学习系列4(类加载机制及反射)
- 回顾大一·C语言编程4.3(1)
- ul下的子类定义不同样式
- STL容器判空与指针保护问题
- IIC总线
- OpenStreetMap输入地址进行自动定位
- 操作系统:引论
- linux快速杀死某个用户的全部进程
- 评论表设计
- 贪心算法详解
- (vue:案例02) vue-cli 如何搭建项目
- bat 删除文件及文件夹