c++
laozhong110
android app、c++、windows app
展开
-
std erase执行后iterator的效果
<br /> <br />vector、list、map三个容器在执行erase的效果:<br />在vs2005中vector在执行erase后,在erase参数中的_it所指向的位置开始,一直到后面,所有的_iterator无效,但之前的还是有效的.比如下面代码<br />vector<int> vint;<br /> vint.push_back(1);<br /> vint.push_back(2);<br /> vint.push_back(3);<br /> vint.push_back(4);原创 2011-05-03 10:13:00 · 1670 阅读 · 0 评论 -
类的非虚成员函数的访问-------脑子不好使,转了下出来了,记下给自己留个醒
<br /> 类要访问一个成员函数, 其实是不需要一个类对象实体的,一个类对象的空指针就可以访问,只要这个成员函数不访问类成员变量,就一切Ok<br />比如:<br />class CA<br />{<br />public:<br /> int fun()<br /> {<br /> int i = 0;<br /> return i;<br /> }<br />};<br /> <br />CA *pca = NULL; <b原创 2011-05-07 22:57:00 · 1270 阅读 · 1 评论 -
散列表
1. 散列的概念 散列(Hash):既是一种存储方式,又是一种查找方法。又称作哈希查找。 散列表/哈希表:按散列存储方式构造的查找表,称之为~。 散列基本思想:以关键码为自变量,通过一定的函数关系计算出函数值,将函数值作为结点的存储地址,将结点存入计算得到的存储单元中。其函数则为散列函数。 散列搜索算法:主要由两部分组成:散列函数和冲突调节。 冲突调节:理想的情况是不同的关键字映射到同的转载 2013-05-16 10:38:57 · 1643 阅读 · 0 评论 -
网卡的模式
改变模式需用程序实现如Sniffer类的软件一般都采用将网卡设置成混杂模式来获取数据包,设为混杂模式之后,因为网卡会接收所有能够接收到的数据,所以这个时候的数据量非常大,所以在设置为混杂模式同时,一般要设置过滤条件。sniffer之类的软件将网卡设置为混杂模式,只是供自己监听数据(根据用户的要求自动设置过滤条件),在这类软件退出之后会自动将网卡还原为正常工作模式。下面是比较详细的网卡模式介绍以太网转载 2013-06-17 11:36:49 · 896 阅读 · 0 评论 -
IP头、TCP头、UDP头详解以及定义
一、MAC帧头定义 /*数据帧定义,头14个字节,尾4个字节*/ typedef struct _MAC_FRAME_HEADER { char m_cDstMacAddress[6]; //目的mac地址 char m_cSrcMacAddress[6]; //源mac地址 short m_cType; //上一层协议类型,如0x0800代表上转载 2013-06-18 10:11:33 · 1355 阅读 · 0 评论 -
十六进制的字符串转换到十六进制byte数据
BOOL TransData(CString InStr,PUCHAR OutStr) { UINT i=0, j=0; UINT len=0; len = InStr.GetLength(); if ((len % 2) != 0) { m_strError.Format("长度错原创 2011-12-09 13:35:06 · 843 阅读 · 0 评论