C++ STL list 遍历删除崩溃
错误用法一
下面这种用法会在for的地方崩溃,分析 第一次for循环的时候 it=0,当t.erase(it)执行完成之后 it就变成了 -17891602
表明it不能再作为迭代器进行运算,自然会报错。
#include
#include
using namespace std;
typedef std::list TESTLIST;
int...
分类:
编程语言 时间:
2015-04-03 15:28:51
阅读次数:
148
如何用vector或者set删除一亿个数里的奇数
先说说VECTOR怎么删除指定的元素,因为VECTOR有迭代器失效的问题,一般人都会写这么样的一个函数
for(vector::itertor it=a.begin();it!=a.end();)
{
if(a[i]%2==1)
it=a.erase(it);
else
it++;
}
这样的函数如果数据量很小的话...
分类:
其他好文 时间:
2015-03-31 09:03:35
阅读次数:
126
先看如下一道改错题: #include #include using namespace std; void print(vector); int main() { vector array; array.push_back(1); array.push_back(6); array.push_ba...
分类:
其他好文 时间:
2015-03-31 00:42:24
阅读次数:
117
C++ STL中的remove和erase函数曾经让我迷惑,同样都是删除,两者有什么区别呢?vector中的remove的作用是将等于value的元素放到vector的尾部,但并不减少vector的sizevector中erase的作用是删除掉某个位置position或一段区域(begin, end...
分类:
其他好文 时间:
2015-03-30 22:33:23
阅读次数:
123
输入参数错误时,退格会出现^H,这个时候只要在脚本顶部加一条语句:stty erase ^h就可以了#!/bin/shsttyerase^h
分类:
系统相关 时间:
2015-03-30 12:41:29
阅读次数:
217
开发板上的nand flash写不了,擦除不了:Bad block at 0xxxxx in erase block from 0xxxxx will be skipped……解决方法:nand scrub$(offset) $(size)yenter删除标记的坏块,这样就把整个flash格式化了....
分类:
其他好文 时间:
2015-03-12 00:53:17
阅读次数:
156
vector使用十分方便,可以存放任意类型数据结构。有时候我们会在vector中存放对象指针等,在删除某个元素的时候,我们还需要释放相应的内存。本文主要谈一下erase方法,尤其是在循环体中使用erase方法,需要注意是否存在隐性问题。erase的函数原型有两种形式:iteratorerase(ite..
分类:
其他好文 时间:
2015-03-07 18:46:55
阅读次数:
683
今天再花了一个白天时间,把PPT动画的进入效果全部实现。浮入效果头文件class TCbwAnimationEffect_Erase : public TCbwAnimationEffect { // 擦除virtual void __fastcall BuildMaskMat(cv::Mat& d...
分类:
其他好文 时间:
2015-03-06 17:01:50
阅读次数:
136
今天再花了一个白天时间,把PPT动画的进入效果全部实现。
1. 头文件
class TCbwAnimationEffect_Erase : publicTCbwAnimationEffect { // 擦除
virtualvoid __fastcall BuildMaskMat(cv::Mat& destMat, cv::Mat& srcMat,
...
分类:
其他好文 时间:
2015-03-06 16:35:35
阅读次数:
227
1、进入sqlplus前设置回删
在进入sqlplus之前,在当前terminal 执行如下命令: stty erase ‘^H’ 就可以了。
stty: 修改终端参数。如果不想每次进入终端都敲入这个命令,在当前用户的.profile里面加入这个命令。这个命令的意思就是使用
BackSpace键作为删除键。
2、在sqlplus里面用ctrl+backspace代替back...
分类:
数据库 时间:
2015-03-06 15:59:04
阅读次数:
173