C++ Tips

原创 2006年05月27日 12:34:00

1 删除std::map元素 

map<int, int>  intMap;
 map<int, int>::iterator iter;
 for(iter = intMap.begin(); iter != intMap.end(); iter++)
 {
  if(condition)
  {
    intMap.erase(iter--);
  }
}

我们不能直接用intMap.erase(iter)来删除当前元素, 因为iter之后还要用来iter++, 但iterator删除后是不能再使用的,所以我们用iter--使iter指向前一个元素, 但返回当前元素让map删除。这个下一循环时iter++刚好指向我们需要的下一个元素。

2 STL容器的迭代器比较尽量使用 "!=", 而不是 "<"
  虽然对于vector而言, "!=" 与 "<" 都能使用
 vector<int> vecInt;
  vecInt.push_back(1);
  vecInt.push_back(2);
  vector<int>::const_iterator citer1;
  for(citer1 = vecInt.begin(); citer1 < vecInt.end(); citer1++)
  //或citer1 != vecInt.end();
  {
      cout<<*citer1<<endl;
  }

  但是容器list,map等不支持"<"比较运算符(iterator类似于指针, 像vector这样连续存放时才能支持"<").
  所以为了一致性,stl的容器最好全部使用 "!=" 比较
 

layer ui插件显示tips时,修改字体颜色

今天做调查问卷,又遇到一个蛋疼小问题,记录下。 调查问卷有很多选项是要求必填的,如果不填的话,需要给出友好的提示。用的如下组件:http://layer.layui.com/ 1、之前一直默认用的...
  • wodeai1235
  • wodeai1235
  • 2017年03月07日 14:19
  • 4416

一些技巧吧!Unity Tips(日常使用)

孙广东 2015.10.30 1、按组件名称搜索 场景的hierarchy 层次结构, 就是得到 使用了这个组件的对象 2、如何查找文档快捷方式(就是很快的方式找到 组件的文档) ...
  • u010019717
  • u010019717
  • 2015年10月30日 08:51
  • 3253

这些Tips让你的App更容易维护

提高App的可维护性和可扩展性
  • sdkfjksf
  • sdkfjksf
  • 2016年04月09日 17:34
  • 2199

C++ Standard Library Practical Tips.doc

  • 2009年05月03日 22:32
  • 2.55MB
  • 下载

Tips for Optimizing C/C++ Code

  • 2017年11月01日 16:08
  • 40KB
  • 下载

Visual C++ Tips: 用 IP Helper 获得网络接口的友好名称(Friendly Name)

前面有篇文章:《用 WinPcap 获取网络接口列表》,是通过 WinPcap 库来获得网络接口列表,但是拿到的网络接口名称对于人(Human Being)来说毫无意义,如下图: 实际上我们在 Wi...
  • XinYaping
  • XinYaping
  • 2016年01月04日 16:36
  • 1701

Three Optimization Tips for C++

https://www.facebook.com/notes/facebook-engineering/three-optimization-tips-for-c/10151361643253920 ...
  • u014333051
  • u014333051
  • 2014年05月07日 16:08
  • 623

C++优化tips

__builtin_expect参数 这个参数可以预测分支,从而优化程序性能。 编译器版本 GNUC _builtin_expect((expr),1) //表示这个expr有很大可能发生...
  • qiulu12345
  • qiulu12345
  • 2016年07月22日 10:44
  • 93

C++ Tips

1. Macro problem    #define max(a,b)  ( (a) > (b) ? (a) : (b) )     a = 5 , b = 1;    max( a++, b ) ...
  • fred520
  • fred520
  • 2011年07月28日 14:07
  • 333

C++ Tips: 获取更精确的系统时间(Windows 系统)

如果要获得真正毫秒级甚至更高精度的当前系统时间,必须跟 CPU 打交道,别无它法。...
  • XinYaping
  • XinYaping
  • 2015年10月28日 12:21
  • 4938
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++ Tips
举报原因:
原因补充:

(最多只允许输入30个字)